Je voudrais me connecter automatiquement à la tty1
connexion, puis l'utiliser vlock
pour le verrouiller.
Comment puis-je détecter à partir de Bash si le terminal actuel est un terminal virtuel de console (par exemple tty1
), afin que je puisse mettre la vlock
ligne .bash_profile
dedans et la faire fonctionner uniquement si je me connecte tty1
?
tty
peut être mal compris pour signifier détecter si le shell actuel est connecté à un périphérique pseudo-terminal.Réponses:
Vous pouvez utiliser
tty
pour obtenir le nom du terminal virtuel actuel, puis le tester avec unecase
instruction:la source
tty
affichera le pseudoterminal de l'émulateur de terminal, pas le terminal physique sur lequel X s'exécute.Il suffit généralement de tester simplement STDIN (FD0):
la source
.bash_profile
est appelé sur les shells de connexion et la connexion GUI normale n'a pas de terminal, donc le seul shell de connexion de terminal doit être un tty. Bonne trouvaillecron
ou desat
travaux pour éviter les échecs lorsque les scripts supposent une entrée interactive.