출처
crontab에 관한 글에서 '>/dev/null 2>&1'의 뜻이 무엇인가요?
crontab에 관한 글을 읽고 있습니다.
다음은 자동으로 이메일 보내는 것을 불가능하게 하는 방법에 대한 내용입니다.
8. 이멩일 불가능하게 하기
기본으로 cronjob을 실행하는 사용자 계정으로 이메일을 보냅니다. 이것이 필요하지 않으면 shell 명령어 끝에 다음 명령을 붙이세요.
>/dev/null 2>&1
2
, >
, &
, 1
의 자세한 뜻이 무엇입니까? cronjob 파일의 마지막에 이메일 보내는 것을 끄기 위해 왜 이걸 붙어야 합니까?
-------------
6개의 답변 중 1개의 답변만 추려냄.
>
는 리다이렉트(redirect)를 위한 것입니다.
역자 설명) 화면에 출력된 내용(stdout)을 오른쪽에 나올 파일(여기서는 /dev/null)로 결과를 보내라는 뜻입니다.
/dev/null 은 어떤 데이터를 보내든 블랙홀로써 전부 버려질 것입니다.
2
는 표준 에러를 뜻하는 파일 디스크립터(file descriptor) 입니다.
>
는 리다이렉트(redirect)를 위한 것입니다.
&
파일 디스크립터를 뜻하는 심볼입니다. (이 기호가 없으면 다음 1
은 파일이름으로 간주될 것입니다.)
1
은 표준 출력을 뜻하는 파일 디스크립터(file descriptor) 입니다.
그러므로 >/dev/null 2>&1
는 프로그램의 출력을 /dev/null로 보냅니다(redirect). 보낼 때 표준에러 와 표준출력이 포함됩니다.
더 많은 정보를 원하시면 리눅스 문서화 프로젝트 페이지 I/O Redirection 에서 확인 가능합니다.
cron
은 job의 출력이 있을 때만 이메일을 당신에게 보낼 것입니다. null로 redirect되는 모든 것에 대해 출력이 없기 때문에 cron은 당신에게 이메일을 보내지 않을 것입니다.
'리눅스 shell' 카테고리의 다른 글
리눅스에 공유메모리에 접근한 프로세스의 목록을 아는 방법 (0) | 2015.08.13 |
---|---|
expect (0) | 2015.08.09 |
ssh를 사용하여 원격 컴퓨터의 shell script를 실행하는 방법? (0) | 2015.03.26 |
rsync (0) | 2015.02.17 |
왜 쉘 명령어가 \(백슬래시)로 시작하나요? (0) | 2014.07.08 |