System/Linux

/dev/null

linuxism 2011. 1. 23. 13:26
Shell Programming을 할 때 /dev/null을 사용하게 되면 상당히 효율적으로 out line에 대한 처리가 가능하다.

/dev/null은 standard out이든 standard err든 모든 output을 출력하고 싶지 않을 때 사용한다.

일종의 블랙홀이다. 한 번 빠져들어가면 없어져 버리는...

find / -size 1000c 2> /dev/null 이런 명령을 보았을 것이다.

2> /dev/null 은 standard err만을  출력하지 않겠다는 의미다. 때문에 이 명령이 끝나면 실제 Permission관련 에러들이 

발생해야 하는데 이러한 익셉션은 모두 블랙홀로 빠져들어가 버리게 된다.

1> /dev/null 이것은 Standard Out만을 출력하지 않겠다는 의미다. 때문에 에러만을 출력하게 된다.

> /dev/null을 하게 되면 아무것도(에러도, 일반결과물도) 출력을 하지 않게된다.

사용 용도를 보자면 다수의 필요없는 출력결과들의 양을 컨트롤 할 수 있는 명령이다.

개발시 알려진 에러를 출력을 하고 싶지 않은 익셉션이 있다면 이를 통해 제어하는 것도 가능할 것이다.

참조 - http://blog.naver.com/blubeard?Redirect=Log&logNo=80108557977