2>&1
OS/리눅스 & 유닉스 2011. 9. 8. 15:31보통 파일하나 만들때
cat /dev/null > a.txt
라고 하면 0byte 짜리 a.txt 파일이 생기잖아요...
근데, 뒤에 2>&1 은 뭐죠?
어떨때 사용하는 건가요?
shell redirection 을 공부하시면 됩니다 . man bash
간단하게 얘기하면
1 은 standard out - 표준출력
2 는 standard error - 표준 에러
2>&1 은 표준 에러를 표준 출력으로 redirection 하는 거지요.
예를 들면
$ echo hi > hi.txt // 1> hi.txt 에서 1을 생략해도 됩니다. 표준 출력을 hi.txt 에 저장 $ cat hi.txt hi $ cat hi.txt > /dev/null // 표준 출력을 /dev/null 로 리다이렉션합니다. 결과없음 $ rm hi.txt // hi.txt 를 지웁니다 $ cat hi.txt cat: hi.txt: No such file or directory // 에러출력입니다. $ cat hi.txt >/dev/null cat: hi.txt: No such file or directory // 위와 같은 에러 $ cat hi.txt > /dev/null 2>&1 // 표준 에러를 표준 출력으로 redirection $ // 아무런 출력이 없습니다. $ rm hi.txt $ rm hi.txt rm: cannot remove `hi.txt': No such file or directory $ rm hi.txt > hi_err.txt 2>&1 // 위의 에러를 표준 출력으로 돌려 hi_err.txt 로 저장 $ cat hi_err.txt rm: cannot remove `hi.txt': No such file or directory