표준 출력·표준 에러 출력,/dev/null에 대해.

1917 단어 UNIXBash리눅스
Unix나 Linux에서 커맨드를 사용하고 있으면, 표준 출력이라든지, 표준 에러 출력등에 대한 지식이 없었으므로, 간단하게 정리해 보겠습니다.
드디어/dev/null에 대해서도.

용어 설명



소개 각 용어에 대해 설명합니다.


품목
설명


표준 출력
출력이 디스플레이에 표시됩니다. 파일 디스크립터는 1번(쉘에서 런타임시 정상 종료시의 메시지)

표준 오류 출력
출력이 디스플레이에 표시됩니다. 파일 디스크립터는 2번(쉘에서 런타임 시 발생한 에러 메시지)

/dev/null
출력이 삭제되고 아무 것도 표시되지 않습니다. 이미지는 쓰레기통.


샘플
  • 표준 출력
  • $ echo sample
    sample 
    
  • 표준 오류 출력
  • # 存在しないディレクトリファイルを指定してみる。
    $ ls error
    ls: cannot access error: そのようなファイルやディレクトリはありません 
    

    /dev/null에 출력해 보자.
    $ echo sample >& /dev/null
    →何もおこらない
    $ ls error >&/dev/null
    →何もおこらない
    

    조금 이해하기 어렵기 때문에 쉘 스크립트를 작성합니다.
    (sample.sh)

    sample.sh
    #!/bin/bash
    
    # 標準出力(1)として、表示します。
    echo "標準出力"
    
    # 標準エラー出力(2)として、表示します。
    # ※ 1→2にリダイレクトすることで、標準エラー出力として表示します。
    echo "標準エラー出力" 1>&2 
    
    exit 0
    

    실행 결과
    # 1 を/dev/nullに捨てることで、2だけが表示されます。
    $ ./sample.sh 1>/dev/null
    標準エラー出力
    
    # 2 を/dev/nullに捨てることで、1だけが表示されます。
    $ ./sample.sh 2>/dev/null
    標準出力
    

    좋은 웹페이지 즐겨찾기