tr 명령이 파일에서 읽히지 않는 이유는 무엇입니까?

tr 명령이 파일에서 읽히지 않는 이유는 무엇입니까?

나는 Unix 책, man 및 wikipedia 페이지를 찾았지만 tr왜 그것이 파일에서 읽지 않고 표준 입력에서만 읽히는 방식으로 설계/구현되었는지 이유를 찾을 수 없었습니다. 예를 들어, wc, grep, sed및 all 과 같은 도구는 awk제공된 경우 파일이나 표준 입력에서 입력을 기꺼이 읽습니다. tr이런 식으로 디자인해야 하는 설득력 있는 이유가 있었나요 ?

답변1

그만큼유닉스 철학"작고 날카로운 도구"를 옹호하므로 대답은 UNIX 철학에 반하여 파일에서 읽는 것이 부풀어 오른다는 것입니다. wc, grep, sed, 등이 파일에서 읽는 이유에 대한 awk대답은 모두 둘 이상의 입력 또는 입력 선택이 필요하거나 파일에 직접 액세스해야 하는 기능이 있다는 것입니다. 이러한 이유로 일반적으로 사용되지 않으므로 tr귀하의 필요를 충족시키기 위해 다음 양식 중 하나가 남습니다.

tr ... < file
tr ... < file > file2
tr ... < file | sponge file

관련 정보