studente@lab:~$ man shell

La shell è il posto dove scrivi ordini al computer invece di cliccare. Tutto quello che serve per iniziare sta in questa pagina: per ogni comando trovi la parola inglese da cui nasce, così lo ricordi senza studiarlo a memoria.

Come è fatto un comando

Ogni riga che scrivi ha sempre la stessa forma. Separa le parti con uno spazio.

lsIl comando: cosa fare
-l -aLe opzioni: come farlo (iniziano con -)
/etcL'argomento: su cosa farlo

Le opzioni corte si possono unire: ls -l -a equivale a ls -la. Maiuscole e minuscole contano: -l e -L sono opzioni diverse.

Nessun comando trovato. Prova con una parola più semplice, come "file" o "rete", oppure usa man -k parola nel terminale.

Permessi: il trucco del 4-2-1

Ogni file ha tre permessi per tre tipi di persone. Somma i numeri e ottieni la cifra da dare a chmod.

4rleggere (read)
2wscrivere (write)
1xeseguire (execute)
ScriviProprietario (u)Gruppo (g)Altri (o)Quando si usa
chmod 755rwx (4+2+1)r-x (4+1)r-x (4+1)Script e cartelle
chmod 644rw- (4+2)r-- (4)r-- (4)File normali
chmod 600rw- (4+2)------Chiavi SSH e segreti

Leggi l'output di ls -l così: -rwxr-xr-- → primo carattere il tipo (- file, d cartella), poi tre blocchi da tre: proprietario, gruppo, altri.

Pipe e redirezioni: i tubi

Immagina ogni comando come un rubinetto. Questi simboli decidono dove va l'acqua.

SimboloCosa faEsempio
|Passa l'uscita di un comando al successivoip a | grep inet
>Scrive in un file, cancellando il contenutols > elenco.txt
>>Aggiunge in fondo al filedate >> log.txt
<Legge l'ingresso da un filewc -l < elenco.txt
2>Salva solo gli errorifind / -name x 2> /dev/null
&&Esegue il secondo solo se il primo riescesudo apt update && sudo apt upgrade

Un > o due? Uno solo sovrascrive, due aggiungono. Nel dubbio usa >>.

Percorsi e simboli speciali

/La radice: il punto da cui parte tutto il file system
~La tua cartella personale (/home/nome)
.La cartella in cui ti trovi adesso
..La cartella sopra, il "genitore"
*Qualsiasi sequenza di caratteri: *.txt = tutti i file .txt
?Un solo carattere qualsiasi: foto?.jpg
$VARIl valore di una variabile: echo $HOME

Un percorso che inizia con / è assoluto (vale ovunque). Senza / iniziale è relativo (parte da dove sei).

Tasti che fanno risparmiare tempo

Le 5 regole d'oro

  1. Prima di agire, guarda dove sei: pwd e ls.
  2. Non sai un comando? man comando oppure comando --help.
  3. Premi Tab sempre: evita errori di battitura.
  4. rm non ha cestino. Quello che cancelli è perso.
  5. Usa sudo solo quando serve e solo se sai cosa fa il comando.

Mettiti alla prova

Pensa alla risposta, poi apri per controllare.

Come vedi l'indirizzo IP della tua scheda di rete?

ip a (address). Cerca la riga che inizia con inet.

Come verifichi se il server 8.8.8.8 risponde, inviando solo 4 pacchetti?

ping -c 4 8.8.8.8 (c = count).

Come torni alla cartella superiore?

cd ..

Quale numero dai a chmod per rw-r--r--?

644: 4+2, 4, 4.

Come trovi tutte le righe con "error" in syslog?

grep error /var/log/syslog (aggiungi -i per ignorare maiuscole e minuscole).

Quali porte sono in ascolto sulla macchina?

ss -tuln: t = TCP, u = UDP, l = in ascolto, n = numeri invece di nomi.

Come ti colleghi al server 192.168.1.10 con l'utente admin?

ssh admin@192.168.1.10