Come personalizzare la variabile Shell PS1-PS4 su Bash Prompt
Puoi vedere la vera bellezza di Linux quando usi i comandi della shell. Per impostazione predefinita, il prompt della shell visualizza il nome host e la directory di lavoro. Usando le variabili, puoi cambiare il colore del prompt dei comandi, il display, la data, l’ora, il nome utente, ecc. Puoi persino eseguire script di shell all’interno della variabile PS1, dove PS rappresenta l’istruzione prompt. Mostrerò alcuni esempi di modifica dell’ambiente Linux utilizzando la variabile PS1.
Lettura correlata: Come cambiare il messaggio colorato di Bash Shell in Linux
Introduzione di diverse variabili di shell
- PS1: variabile di ambiente contenente il valore del prompt predefinito. Modifica l’aspetto e l’ambiente del prompt dei comandi della shell.
- PS2: variabile d’ambiente contenente il valore del prompt utilizzato per interpretare la continuazione del comando. Lo vedi quando scrivi un lungo comando su più righe.
- PS3: variabile di ambiente che contiene il valore del prompt per l’operatore select all’interno dello script della shell.
- PS4: variabile d’ambiente contenente il valore del prompt utilizzato per visualizzare le righe di script durante l’esecuzione di uno script bash in modalità debug.
Nota che in questo articolo useremo eco comando per vedere il valore del diverso prompt nella nostra console.
1) Cambia il prompt di bash PS1
PS1 è il prompt predefinito che vediamo ogni volta che accediamo alla console. Per i sistemi Linux più recenti, i valori predefiniti sono u@h:w$ che mostra nome utente, nome host, directory di lavoro corrente e privilegio utente. Questi sono solo esempi dei diversi valori che può assumere. Ci sono altri valori che vedremo in seguito. Diamo un’occhiata al valore predefinito del prompt PS1 sul terminale
# echo $PS1
[e]0;u@h: wa]${debian_chroot:+($debian_chroot)}u@h:w$
Le parti che includono debian_chroot indica che se stai lavorando in un ambiente di modifica root, il prompt verrà modificato per ricordartelo. Controlla di seguito per avere un’idea completa per il resto del prompt:
Opzioni:a
Carattere a campana ASCII (puoi anche digitare 07)d
Data nel formato “Sat Sep 04”.e
Carattere di escape ASCII (puoi anche digitare 33)h
La prima parte del nome host (come “mybox”)H
Nome host completo (come “mybox.mydomain.com”)j
Il numero di processi che hai sospeso in questa shell premendo ^Zl
Il nome del dispositivo terminale della shell (come “ttyp4”)n
Nuova linear
Spedizione di ritornos
Il nome dell’eseguibile della shell (come “bash”)t
Ora nel formato 24 ore (come “23:59:59”)T
Ora in formato 12 ore (come “11:59:59”)@
Orario in formato 12 ore con am/pmu
Nome utentev
versione bash (come 2.04)V
Versione di Bash, compreso il livello di patchw
Directory di lavoro corrente (come “/home/koithara”)W
Il “nome di base” della directory di lavoro corrente (come “koithara”)!
La posizione corrente del comando nel buffer della cronologia#
Numero d’ordine (questo conterà fino a ogni richiesta fintanto che inserisci qualcosa)$
Se non sei root, inserisci “$”; se sei root ottieni un “#”xxx
Inserisce un carattere ASCII basato su un numero di tre cifre xxx (sostituisci le cifre inutilizzate con zeri, ad esempio “