[RISOLTO] Variabile di shell PS1

Bash, Perl, Python, Ruby, ...

[RISOLTO] Variabile di shell PS1

Messaggioda varlux » 23/08/2017, 22:04

Salve, ho letto ed imparato a formattare la variabile di shell in oggetto per modificare il prompt dei comandi.

Pensavo di aver raggiunto un buon livello di apprendimento ma.... provando un "echo" della stessa variabile sul mio nuovo VPS leggo:
Codice: Seleziona tutto
${debian_chroot:+($debian_chroot)}\u@\h:\w\$


??? ???

riesco ovviamente ancora a decifrare la parte finale "user@host:working_directory$", ma non comprendo quella iniziale:

Codice: Seleziona tutto
${debian_chroot:+($debian_chroot)}


Qualcuno che possa illuminarmi?
Grazie
Ultima modifica di varlux il 27/08/2017, 17:25, modificato 1 volta in totale.
Avatar utente
varlux
Newbie
Newbie
 
Messaggi: 21
Iscritto il: 19/03/2013, 16:58


Re: Variabile di shell PS1

Messaggioda varlux » 26/08/2017, 14:04

Grazie Aki,

quindi dovrei tradurre in:

Se il parametro debian_chroot non è impostato, allora verrà impostato come stringa nulla


Coretto?

Grazie
Avatar utente
varlux
Newbie
Newbie
 
Messaggi: 21
Iscritto il: 19/03/2013, 16:58

Re: Variabile di shell PS1

Messaggioda Aki » 26/08/2017, 21:06

No; significa, che l'espressione da te rappresentata è sostituita dall'interprete bash con il contenuto della variabile debian_chroot tra parentesi tonde se la stessa è definita, ad esclusione del caso in cui il contenuto della variabile sia nullo. Ad esempio:
Codice: Seleziona tutto
$ debian_chroot="prova"; echo ${debian_chroot:+($debian_chroot)}
(prova)
$ debian_chroot=; echo ${debian_chroot:+($debian_chroot)}

$ unset debian_chroot
$ echo ${debian_chroot:+($debian_chroot)}

Aki
Global Moderator
Global Moderator
 
Messaggi: 7756
Iscritto il: 27/12/2007, 16:59

Re: Variabile di shell PS1

Messaggioda Aki » 27/08/2017, 17:13

@varlux: la discussione può considerarsi risolta ?
Aki
Global Moderator
Global Moderator
 
Messaggi: 7756
Iscritto il: 27/12/2007, 16:59


Torna a Scripting

Chi c’è in linea

Visitano il forum: Nessuno e 1 ospite