Il titolo del terminale viene impostato utilizzando speciali sequenze di escape nell'output della console. Per impostazione predefinita, il prompt di bash include queste sequenze di escape e imposta il titolo sulla directory di lavoro corrente.
Quindi dovrai modificare la tua variabile PS1 (la maggior parte delle volte è impostata in ~/.bashrc
), altrimenti bash sovrascriverà il titolo ogni volta che viene visualizzato il prompt.
Puoi quindi impostare il titolo inserendo quanto segue in uno script che viene eseguito quando accedi, ad es. ~/.profile
:
echo -e "\033]0;<your string>\007"
La maggior parte dei programmi per terminali, inclusi konsole, putty e xterm, emulano il vecchio terminale VT100. Questo terminale ti consente di impostare determinate cose, tra cui grassetto, colori, impostare il titolo del terminale e così via, utilizzando sequenze di caratteri speciali chiamate sequenze di escape.
La shell bash ha una variabile chiamata PROMPT_COMMAND che, se impostata, viene valutata prima di ogni prompt stampato (credo che zsh abbia qualcosa di simile, infatti penso che bash abbia preso il codice da loro). Puoi emettere sequenze di escape in PROMPT_COMMAND e imposterà la barra del titolo.
Questo è quello che ho nel mio (Linux/bash):
USER=$(/usr/bin/id -un)
HOSTNAME=$(uname -n)
HOSTNAME=${HOSTNAME%%.*}
PROMPT_COMMAND='echo -ne "\e]0;[email protected]${HOSTNAME}: $(pwd -P)\a"'
Puoi inserirlo nel tuo ~/.bashrc
Ci sono molte personalizzazioni che puoi fare con il tuo terminale. Mi piace il grassetto nel mio prompt, per rendere più facile vedere la fine del mio prompt. Questo lo rende giallo intenso, ottimo contro il mio sfondo nero predefinito:
PS1="\[\e[33;1m\]\h:\$\[\e[0m\] "
Cerca Linux Prompt Customization, troverai più HowTo di quanti ne saprai cosa fare. Scegli quello che ritieni più facile da leggere.
Ho cercato in molti forum e non ho trovato la risposta alla domanda:
Come ottenere tutto l'output del comando nel titolo di Putty?
Necessario per altri programmi per sapere quando alcuni lavori su un server sono stati completati ed è stato fatto bene o male. Plink stdout e stdin non funzionavano. Ho usato molte modifiche con ritardi di attesa e per alcuni comandi che hanno funzionato, per altri no. Impossibile installare XSEL e XCLIP su quel server.
Quindi ecco la soluzione:
- Ottieni l'output del comando in un file.
- Echo quel file nel titolo.
Sul client Putty e sul server SUSE ha questo aspetto:
ls /home | grep domagaja > logutoit.txt
echo -e "\033]0\\;$(cat logutoit.txt)\\007\\c"
Speriamo che qualcuno sarà in grado di utilizzare questo. Ovviamente non funzionerà per tutti i tipi di server e le impostazioni del client putty, ma l'idea dovrebbe funzionare bene.