Bash shell: una guida pratica - Parte 1
Una semplice ma pratica guida. In questa prima parte vediamo i comandi fondamentali ed una introduzione.
Introduzione
Ogni volta che digitiamo un comando sulla nostra console o quando lanciamo un
programma tramite il famoso click, o doppio click, su una delle icone del nostro
desktop il sistema operativo intrepreta la volontà dell'utente attraverso
una shell di comando. Ma cos'è esattamente una shell? Quali sono i suoi
scopi e i suoi principali usi? In questa serie di articoli capiremo proprio questo:
una guida di base per tutti coloro che si avvicinano a Linux ma che vogliono imparare
da subito ad amministrare il proprio sistema dalla linea di comando e senza artifizi
grafici.
/bin/sh: bourne again!
La shell è sicuramente una delle parti più importanti dell'intero
sistema operativo. Essa è l'interprete dei comandi dati in input dall'utente
e non fa altro che eseguirli. Sui sistemi Unix, la shell più famosa ed
usata, dalla quale deriva anche quella di Linux, è la shell bourne.
La versione migliorata prende il nome di “bourne again” shell
o BASH. E' la shell più usata negli ambienti Linux anche se ne esistono
altre: la Public Domain Korn Shell (PDKSH), la shell TCSH e la Z-Shell. Tutte
le principali distribuzioni GNU/Linux usano la shell bash anche se permettono
di usare tutte le altre. Di solito, però, la shell bash è quella
usata di default dal nostro amato sistema operativo e anche noi la consideriamo
tale.
Comandi fondamentali
Dopo questa breve introduzione siamo dunque pronti per partire alla scoperta dei
comandi fondamentali della shell bash.
cp
Esempio: cp tux1 tux2
cp tux1 ... tuxN dir/
Il comando cp (copy) viene utilizzato per creare
delle copie conformi dello stesso file su più parti del sistema, in un
nuovo file o in qualche directory. Con il primo comando, infatti, copieremo il
contenuto del file tux1 nel file tux2 mentre col secondo copieremo tutti i file
tuxN nella directory indicata (dir/).
mv
Esempio: mv tux1 tux2
mv tux1 ... tuxN dir/
Il comando mv (move) utilizzato nella prima espressione
permette di rinominare il file tux1 in tux2. Nella seconda espressione sposta,
invece, tutti i file indicati nella directory prescelta (dir/).
touch
Esempio: touch tux
Il comando touch crea un nuovo file. Se il file che si vuole creare, tux, già
esiste, touch non lo cambierà ma ne aggiornerà soltanto la marcatura
temporale mostrata nell'elenco prodotto dal comando “ls
-l”.
rm
Esempio: rm tux
Il comando rm (remove) rimuove un file dal sistema.
Il file, però, una volta eliminato sarà irrecuperabile. Attenzione,
quindi!
echo
Esempio: echo Sono un lettore di TuxJournal.net
Il comando echo stampa i suoi argomenti, in questo caso “Sono un lettore
di TuxJournal.net”, nello standard output.
cd
Esempio: cd tuxdir
Il comando cd permette di cambiare la directory corrente e di portarsi in quella
desiderata (tuxdir/).
Se si omette l'argomento dopo il comando (tuxdir),
la shell torna alla directory home.
mkdir
Esempio: mkdir tuxdir
Il comando mkdir crea una nuova directory.
rmdir
Esempio: rmdir tuxdir
Il comando rmdir elimina una directory vuota. Se la directory in questione
non è vuota, rmdir, non eliminirà quest'ultima. Per farlo bisognerà
eliminare prima tutti i file contenuti in essa e poi eseguire il comando. E' comunque
possibile utilizare il comando “rm -rf tuxdir”
per eliminare una directory e tutto il suo contenuto. Attenzione, però,
a quello che fate. Questo comando, soprattutto se eseguito come utente root, può
essere fatale al vostro sistema.
grep
Esempio: grep tuxjournal /home/magazines
Il comando grep stampa le righe tratta da un flusso di file o di input che
corrispondono ad una espressione. Nell'esempio proposto, grep, troverà
nel file magazines nella directory /home ogni riferimento a tuxjournal e lo stamperà
in output. Tante sono le funzioni associate a questo comando. Se volete ad esempio
trovare ogni riferimento alla parola tuxjournal in tutti i file della cartella
/home, è possibile farlo con il comando “grep
tuxjournal /home/*”.
more e less
Esempio: more tuxjournal
less tuxjournal
I comandi less e more vengono principalmente usati quando si ha a che fare
con dei file ti testo troppo lunghi e in ogni modo scomodi da leggere. Quando
visualizziamo un file troppo lungo ed utilizziamo il comando “more”
visualizzeremo il contenuto di quest'ultimo una schermata alla volta. Per andare
avanti col testo basta premere la barra spaziatrice e per tornare indietro il
tasto b. Per uscire, digitare il tasto q. Il comando “less”,
invece, è molto più potente di more anche se svolge quasi le stesse
funzioni. Con l'opzione “less –help”,
per esempio, è possibile ottenere un buon riepilogo delle operazioni del
comando.
pwd
Esempio: pwd
Acronimo di “directory di lavoro di stampa” è il comando
che mostra la directory di lavoro corrente.
diff
Esempio: diff tux1 tux2
Il comando diff è molto utile per scovare le differenze tra due file
di testo. Digitando il comando dell'esempio, infatti, è possibile vedere
in output quali sono le sostanziali differenze tra i file di testo tux1 e tux2.
file
Esempio: file tuxfile
Il comando file è molto importante quando vedere un file e non siete
sicuri del formato. Provate ad utilizzarlo per vedere se il vostro amato sistema
riesce a indovinare sulla base di un vasto set di regole.
Conclusioni
La prima parte di questa intensa guida di base alla bash shell si è qui
conclusa. Nella seconda parte analizzeremo altri comandi imparando sicuramente
qualcosa in più rispetto ad oggi. Parleremo di caratteri speciali e jolly,
editor di testo, tasti di selezione rapida e molto altro ancora. Alla prossima,
dunque!
Ti sono rimasti dubbi? Chiedi
aiuto sul forum Linux o sul forum
di TuxJournal
Altri articoli e news su Linux puoi trovarle su TuxJournal.net
<<< Altri articoli di: Linux
Pubblicato il: 21/07/2005
AUTORE TESTO
Vincenzo Ciaglia
TuxJournal.net
|