La bash nel leggere la riga di comando considera ogni singola parola a se stante.
Alcune parole sono riservate all'uso della bash, come per esempio cd,
o fg.
Le altre sono interpretate come nomi di files.
Per fare capire alla bash un nome file che abbia degli spazi o dei caratteri
speciali, si possono usare vari metodi, tra cui quello di mettere il nome tra
una coppia di virgolette, come in "primo file", o in 'primo file' o quello di
usare un carattere speciale che ha lo scopo di commentare, come in \#pippo .
Attenzione che le virgolette inverse come in `ls` hanno il significato
ben diverso del risultato ottento dall'esecuzione del comando ls.
La bash ha anche limitate possibilità di programmazione.
Tipicamente si scrive in un file (batch) una sequenza di comandi, si usa
chmod per dire che il file è eseguibile, e si è ottenuto un nuovo
comando.
Per esempio nel file mio-backup scrivo:
#!/bin/bash
#
DATESTRING=`date +"%Y%m%d"`
cd /home
for i in *
do
tar czvf /home-bak/$i-$DATESTRING.tgz ./$i
done
############################################
fatto chmod u+x mio-backup, questo è diventato un comando che crea
in /home-bak un backup per ogni dir presente in /home/, con nome formato
dal nome della dir seguito dalla data e con postfisso .tgz .
Laboratorio di Comunicazione mediante Calcolatore - Sergio Steffè - AA 2019/2020 - PISA