tty에 "silent"를 사용하는 것이 언제 유용합니까?

tty에 "silent"를 사용하는 것이 언제 유용합니까?

이 명령을 실행 하면 tty --help다음과 같이 표시됩니다.

tty --help
Usage: tty [OPTION]...
Print the file name of the terminal connected to standard input.

  -s, --silent, --quiet   print nothing, only return an exit status
      --help     display this help and exit
      --version  output version information and exit

따라서 tty -s실행되면 아무것도 반환하지 않습니다.

질문

  • 언제 유용합니까?조용한을 위한 tty?

답변1

#!/bin/sh

# Script that is run regularly from cron,
# but also sometimes from the command line.

interactive=false
if tty -s; then
    echo 'Running with a TTY available, will output friendly messages'
    echo 'and may be interactive with the user.'
    interactive=true
fi

# etc.

즉, 현재 셸 세션의 표준 입력 스트림에 TTY가 연결되어 있는지 테스트하는 방법을 제공합니다. 이는 스크립트가 표준 입력 스트림을 읽어 사용자와 상호 작용할 수 있음을 나타냅니다. [ -t 0 ]테스트나 이와 동등한 방법을 사용하여 이 작업을 수행 할 수도 있습니다 test -t 0.진짜fd 0(표준 입력)이 TTY인 경우.

-s옵션과 그 변형은 비표준입니다(POSIX 사양tty), 그리고OpenBSD 매뉴얼tty테스트 도 언급됩니다 -t(여기서기준):

-s
터미널 이름을 쓰지 마십시오. 이 옵션을 지정하면 종료 상태만 영향을 받습니다. -s 옵션은 "test -t 0" 명령을 위해 더 이상 사용되지 않습니다.

관련 정보