/dev/null 과 /dev/zero
두장치 모두 블랙홀 역할을 하기때문에 이장치에 쓰는 모든것은 영원히 사라져 버릴것이다.
하지만 두장치로부터 읽을 때는 차이가 있다.
/dev/null 은 계속해서 0 값을 출력하게 되며 /dev/null 은 아무것도 내놓지 않는다.
[root@mojily ~]# ls -al aa
-rw-r--r-- 1 root root 15 2010-08-20 22:47 aa
[root@mojily ~]# cat /dev/zero > aa
[root@mojily ~]# ls -al aa
-rw-r--r-- 1 root root 124M 2010-08-20 22:53 aa
※ 위에처럼 약간에 데이타가 있는 파일을 /dev/zero 로 읽어버리게 되면 Ctrl +C 를 누르기전까지 계속해서 0값을 채우게된다.
[root@mojily ~]# ls -al aa
-rw-r--r-- 1 root root 15 2010-08-20 22:47 aa
[root@mojily ~]# cat /dev/zero > aa
[root@mojily ~]# ls -al aa
-rw-r--r-- 1 root root 0 2010-08-20 22:55 aa
※ 반면에 /dev/null 명령어를 치게되면 즉시 EOF 가 반환하게 된다.
따라서 aa 라는 파일이 있고 내용이 채워져 있으면 null 이던 zero 든 내용이 비워져 버리지만 zero 의 경우에는 비우고나서 0값을 계속 채우게됩니다.