Septem inopinatum Bash variables

Ad seriem notarum circuitum minus nota munera bash, monstrabo tibi septem variabiles, ne quid ignores.

1) PROMPT_COMMAND

Iam scire licet promptum ad varias utiles informationes moliendas monstrare, sed non omnes scit te posse decurrere conchae mandatum omni tempore promptum esse demonstrandum.

Plures enim manipulatores implicati prompti hac variabilitate utuntur ad mandata facienda ad informationes colligendas quae in promptu exhibetur.

Hoc proba currens in nova testa et vide quid fiat sessioni;

$ PROMPT_COMMAND='echo -n "writing the prompt at " && date'

2) HISTTIMEFORMAT

Si curris history in console, summam mandatorum antea sub ratione vestra executi recipies.

$ HISTTIMEFORMAT='I ran this at: %d/%m/%y %T '

Cum hoc variabile positum est, novi introitus temporis cum imperio notant, ergo output hoc simile erit:

1871 Hoc cucurri ad: 01/05/19 13:38:07 cat /etc/resolv.conf 1872 Hoc cucurri ad: 01/05/19 13:38:19 curl bbc.co.uk 1873 Hoc cucurri ad : 01/05/19 13:38:41 sudo vi /etc/resolv.conf 1874 Hoc cucurri ad: 01/05/19 13:39:18 curl -vvv bbc.co.uk 1876 Hoc cucurri ad: 01 /05/19 13:39:25 sudo su -

Formatting par characteribus a man date.

3) CDPATH

Ut tempus conserves in linea imperio, hac variabilis uteris ut directoriis mutandis tam facile imperas quam imperas.

tamquam PATH, variabilis CDPATH colonia-separata est index semitarum. Cum currunt imperium cd cum relativa via (i.e. non ducentem slash), per default testam spectat in folder locali pro nominibus adaptatis. CDPATH scrutabor in viis quas dedisti pro directorio quod vis ire.

Si install CDPATH ut sequitur:

$ CDPATH=/:/lib

et tunc intrabunt;

$ cd /home
$ cd tmp

et semper terminus sursum in /tmp ubicunque es.

Sed vide, quia si unum in indice localem non specificas..) folder, tunc non poteris alium folder creare tmp et ite ad eum more solito;

$ cd /home
$ mkdir tmp
$ cd tmp
$ pwd
/tmp

Oops!

Hoc simile est confusioni sensi cum percepi folder localem non inclusam magis familiari variabili PATH... sed hoc facere debes in ITER variabilis, quia falli potes in currendo fictum mandatum ex aliquo codice receptae.

Meum est positum principium;

CDPATH=.:/space:/etc:/var/lib:/usr/share:/opt

4) SHLVL

Have vos umquam miratus typing exit tollet te e testam vernaculam ad alium "parentem" testam, an solum prope fenestrae consolatorium claudet?

Haec variabilis vestigia servat quam penitus in testudine verna nidos es. Si novam terminalem creas, ad 1 ponitur;

$ echo $SHLVL
1

deinde, si aliam testam incipias processus, numerus augetur;

$ bash
$ echo $SHLVL
2

Hoc perutile esse potest in scriptis ubi non sis certus utrum exire necne, vel vestigia ubi nidificas.

5) LINENO

Variabilis etiam utilis est ad statum hodiernum examinandum et debugging LINENOqui numerum tantum in sessione imperata faciat;

$ bash
$ echo $LINENO
1
$ echo $LINENO
2

Hoc saepissime usurpatur cum scriptorum debugging. Inserentes lineas sicut echo DEBUG:$LINENOpotes cito determinare ubinam scripturam es (vel non).

6) REPLY

Si, ut me, codicem sic scribere solere;

$ read input
echo do something with $input

Mirum fieri potest quod solliciti esse non debes omnino de variabili creando:

$ read
echo do something with $REPLY

Hoc idem facit.

7) TMOUT

Ad productionem ministrantium vitandum nimium longum est rationes securitatis vel casus periculosos in termino iniuriae currentes, hanc variabilem actuum tutelam ponendo.

Si nihil intratur pro numero secundorum, putamen exit.

Hoc est, hoc est sleep 1 && exit:

$ TMOUT=1

Source: www.habr.com