Coreutils - 거절된 기능 요청들

2 hours ago 1

Coreutils는 기존 도구로 충분히 구현할 수 있거나 복잡성에 비해 효용이 작은 기능 요청을 채택하지 않았으며, 요청별 거절 이유와 메일링 리스트 논의를 정리해 둠 기존 도구의 조합이 여러 기능 요청의 대안이 됨. cp --resume에는 rsync, du --sort에는 du -h | sort -h, 재귀적 touch에는 find를 활용할 수 있음 범용성과 구현 계층도 판단 기준임. CSV 처리는 별도 도구가 적합하고, 특정 파일시스템 지원은 지나치게 특수하거나 복잡하며, 병렬 복사는 더 낮은 계층에서 해결하는 편이 나을 수 있음 표준 호환성과 안전성 때문에 거절한 요청도 있음. echo의 -- 옵션 종료 처리는 POSIX에 어긋나고, rm --parents처럼 트리를 거슬러 올라가는 삭제는 지나치게 위험하다고 판단함 새 환경 변수와 전역 설정 파일보다는 셸 별칭, 함수, 래퍼 스크립트로 기본 동작을 바꾸는 방식을 권장함 기능을 추가하지 않는 판단 Coreutils 개발에서 무엇을 거절할지 결정하고 기여자에게 적절한 근거를 제공하는 일은 가장 어려운 작업 중 하나임 아래 요청들은 좋은 아이디어였지만 각기 다른 이유로 채택되지 않았으며, 연결된 메일링 리스트 논의에서 구체적인 판단 근거를 확인할 수 있음 cat: 출력 가공과 입출력 제어 cat --timestamp: 타임스탬프 추가는 awk나 perl로 충분함 cat -n의 대체 형식: 기존 도구로 출력을 가공하는 편이 더 적합함 cat --show-ends: 행 끝 공백 강조에는 grep --color가 더 적합하거나 충분함 cat --header: 파일별 이름 출력은 tail -n+1이 이미 지원함 cat -S: 공백 문자만 있는 행을 압축하는 작업은 sed 's/^ *$//' | cat -s 같은 조합으로 충분함 cat -d,--direct: 직접 입출력에는 dd의 nocache/direct 옵션이나 범용 nocache 래퍼를 사용할 수 있음 chmod: 권한 설정 범위와 표현 권한이 바뀌지 않으면 ctime 유지: 제안된 패치는 비효율적이라고 판단함 디렉터리만 대상으로 하는 권한 변경은 기존 기능으로 충분함 chmod -d, chmod -D: X 모드 또는 find와 chmod 조합으로 처리 가능함 chmod +S: 디렉터리에만 setgid를 설정하는 작업은 find와 chmod 조합으로 충분함 chmod --parents: 간단한 스크립트나 fin...

Read Entire Article