Come posso cambiare arbitrariamente il titolo di una finestra Terminale in Mac OS X? Ho visto questa domanda e questa cosa dell'involucro magico , ma penso che sia solo un semplice comando di Mac OS X.
Come posso cambiare arbitrariamente il titolo di una finestra Terminale in Mac OS X? Ho visto questa domanda e questa cosa dell'involucro magico , ma penso che sia solo un semplice comando di Mac OS X.
Risposte:
Questo articolo spiega come.
In sostanza, usi le sequenze di caratteri che fanno eco allo schermo per informare il terminale di quale titolo dovrebbe essere visualizzato.
title='My first title'
echo -n -e "\033]0;$title\007"
Nell'esempio sopra, qualunque sia il titolo della variabile impostato mentre diventa il titolo del terminale. Certo, potresti semplicemente avere il titolo nella stringa da echeggiare come:
echo -n -e "\033]0;My first title\007"
Ma il primo modo lo rende leggermente più facile da usare e / o estendere in seguito.
echo -n -e "\033]0;$1\007"
) Nella tua risposta in modo che io possa contrassegnarlo come migliore risposta, per favore?
printf "\033]0;%s\007" "$title_variable"
(le varie opzioni e comportamenti dell'eco non sono gli stessi in tutti i sistemi, shell o anche opzioni di shell) Inoltre, le assegnazioni delle variabili in bash non dovrebbero avere spazi attorno al segno uguale.
Aggiungendo quanto segue al tuo ~/.profile
otterrai lo stesso effetto:
# function for setting terminal titles in OSX
function title {
printf "\033]0;%s\007" "$1"
}
E poi una rapida title 'et voila'
ordinerà tutte le schede.
alias title="printf '\033]0;%s\007'"
.
export alias title="printf '\033]0;%s\007'"
sudo nano /etc/bashrc
. Questo dovrebbe funzionare per tutti gli utenti. Riavviare la sessione terminale o fare source /etc/bashrc
per applicare le modifiche.
Remix della risposta di Dan MgG:
echo -n -e "\033]0;$1\007"
Memorizzalo in un file chiamato / usr / bin / title (usando sudo!) E modificalo in + x. Quindi da qualsiasi luogo puoi semplicemente digitare
title 'Trying to Figure This GIT Thing Out'
e ottieni un bel titolo.
(La sintassi può variare se non sei su OSX, se ho capito bene)
/usr/local/bin/title
invece farlo .
In alternativa alle soluzioni da riga di comando basate su sh, l'app Terminale OS X ha una preferenza per cambiare il titolo come segue: Sotto il menu Terminale-> shell c'è una scelta "modifica titolo", selezionala e puoi cambiare il titolo facilmente.
Grazie per questo. Ho appena aggiunto una funzione al mio .bashrc:
function stit() {
echo -n -e "\033]0;$1\007"
}
Nella mia mente "stit" = una scorciatoia conveniente per "set_title". E ora quando voglio impostare il titolo delle mie finestre al volo, scrivo:
stit "[new window title]"
La risposta contrassegnata come migliore risposta funziona bene ... questo è quello che ho fatto ...
tell application "Terminal"
activate
do script "echo -n -e \"\\033]0;WorkerTab1\\007\"; cd $HOME/folder1"
end tell
questo imposterà il nome della nuova scheda su WorkerTab1 e quindi eseguirà altri comandi come "cd", ecc.