|>
오타를 냈지만 bash
아무것도 인쇄되지 않았습니다. (그러나 빈 파일이 생성됩니다.) 예를 들어,
date |> tmp.txt
그게 실제로 뭔가 의미가 있을 거라고 생각했어요?
답변1
이는 두 번째 부분이 리디렉션만 포함하는 빈 명령인 파이프라인인 것 같습니다. 이렇게 써서 date | >file
설명하는 게 더 쉬울 수도 있겠네요 . 빈 명령은 리디렉션을 처리하고 파일을 생성하는 것 외에는 아무 작업도 수행하지 않습니다.
date >| file
반면에 noclobber
셸 옵션을 재정의 하는 역할을 하여 >
기존 파일을 정기적으로 덮어쓰는 것을 방지합니다.
$ touch foo; set -o noclobber
$ date > foo
bash: foo: cannot overwrite existing file
$ date >| foo # works
답변2
예, bash의 경우 > file
이름 이 file
.file
[[email protected] my-tests]$ date | > my_file
[[email protected] my-tests]$ cat my_file
[[email protected] my-tests]$