테스트가 가상 터미널에서 실행되고 있나요?

테스트가 가상 터미널에서 실행되고 있나요?

제 생각에는자동 로그인로그인할 때 사용 하고, 잠그는 tty1데 사용합니다 .vlock

현재 터미널이 콘솔 가상 터미널(예: tty1) 인지 Bash에서 어떻게 감지하여 vlock라인을 입력 .bash_profile하고 를 통해 로그인한 경우에만 실행할 수 있습니까 tty1?

답변1

다음을 사용하여 tty현재 가상 터미널의 이름을 얻을 수 있습니다.case

#!/bin/sh

case $(tty) in /dev/tty[0-9]*)
    vlock ;;
esac

답변2

일반적으로 STDIN(FD0)을 테스트하는 것만으로도 충분합니다.

[ -t 0 ] && echo "TTY available" || echo "No TTY available"

관련 정보