Me gustaría iniciar sesión automáticamente al tty1
iniciar sesión y luego usarlo vlock
para bloquearlo.
¿Cómo puedo detectar desde Bash si el terminal actual es un terminal virtual de consola (p tty1
. Ej. ), Para poder poner la vlock
línea .bash_profile
y hacer que se ejecute solo si me conecto tty1
?
shell-script
terminal
console
tty
kiri
fuente
fuente
tty
puede malinterpretarse para significar detectar si el shell actual está conectado a un dispositivo pseudo-terminal.Respuestas:
Puede usar
tty
para obtener el nombre del terminal virtual actual y luego probarlo con unacase
declaración:fuente
tty
mostrará el pseudoterminal del emulador de terminal, no el terminal físico en el que X se está ejecutando.Generalmente es suficiente simplemente probar STDIN (FD0):
fuente
.bash_profile
se llama en los shells de inicio de sesión y el inicio de sesión normal de la GUI no tiene un terminal, por lo que el único shell de inicio de sesión del terminal debe ser un tty. Buen hallazgocron
oat
trabajos para evitar fallas cuando los scripts asumen entradas interactivas.