(#개의 댓글은 다음에서 가져왔습니다.문서)
command > filename # Docs: Redirect stdout to a file.
그리고
command 1> filename # Docs: Redirect stdout to file "filename."
답변1
~에서리디렉션에 대한 Bash 매뉴얼 섹션(강조):
출력 리디렉션으로 인해 파일 이름이 확장자로 생성됩니다.단어파일 설명자에 쓰기 위해 열기N, 또는stdout(파일 설명자 1) ifN명시되지 않은. 파일이 없으면 생성되고, 있으면 0 크기로 잘립니다.
>foo
따라서 와 의 차이는 없습니다 1>foo
.
답변2
표준 출력은 암시적 파일 설명자(나열되지 않은 경우)이므로 사실상 동일합니다. 사용은 1>
내가 본 스타일이 아닙니다.
% grep _FILENO /usr/include/unistd.h
#define STDIN_FILENO 0 /* standard input file descriptor */
#define STDOUT_FILENO 1 /* standard output file descriptor */
#define STDERR_FILENO 2 /* standard error file descriptor */