Comandi Linux da sapere a memoria
Quaranta comandi, venti segnati «di base»: quelli bastano per cavarsela ovunque.
Copiare
cp -r per una cartella intera; cp -a conserva in più i permessi e le date.
Connettersi a una macchina
ssh utente@macchina, con -i per indicare una chiave diversa da quella predefinita.
Spostare o rinominare
mv fa tutte e due le cose: rinominare è spostare verso un altro nome.
Seguire un log in diretta
tail -f file.log mostra le righe man mano che arrivano.
Cancellare
rm -r per una cartella. Non c’è nessun cestino: quello che parte non torna.
Elencare una cartella
ls -lh per dimensioni leggibili, ls -la per vedere anche i file nascosti.
Gestire un servizio
systemctl status, start, restart. Lo status dice anche perché è andato storto.
Mostrare un file
cat per quelli corti. Oltre le venti righe, less rende un servizio ben migliore.
Leggere un file grosso
less tiene in mano la navigazione; digitare barra cerca al suo interno.
Cercare dentro i file
grep -rn pattern . dà il file e la riga, cosa che grep da solo non fa.
Trovare un file
find . -name «*.log» -mtime -7: per nome, e modificato negli ultimi sette giorni.
Leggere il manuale
man comando, e soprattutto barra pattern per saltare all’opzione cercata.
Eseguire da amministratore
sudo per un comando, sudo -i per una shell intera quando ce ne sono dieci da dare.
Cambiare cartella
cd senza argomenti riporta nella cartella personale, cd - in quella precedente.
Vedere i processi
ps aux per una fotografia, e una pipe verso grep per ritrovare il proprio.
Fermare un processo
kill chiede gentilmente, kill -9 non chiede. Conviene provare prima il primo.
Sapere dove ci si trova
pwd stampa il percorso assoluto: il comando che disinnesca metà degli errori.
Creare una cartella
mkdir -p a/b/c crea tutta la catena in un colpo, senza protestare se esiste già.
Ritrovare un comando già dato
history | grep pattern, oppure Ctrl+R che cerca mentre si digita.
Cambiare i permessi
chmod 644 per un file, 755 per una cartella o per un eseguibile.
Misurare lo spazio libero
df -h partizione per partizione. È il primo comando quando una scrittura fallisce.
Trovare quello che riempie il disco
du -sh * in una cartella, poi si scende nella più grossa. Di passo in passo.
Archiviare
tar -czf archivio.tar.gz cartella per creare, -xzf per estrarre.
Vedere le prime o le ultime righe
head -n 20 e tail -n 50. Su un file sconosciuto, head ne rivela subito la forma.
Sostituire dentro un file
sed -i s/vecchio/nuovo/g file. Senza -i il risultato resta soltanto a schermo.
Leggere i log di sistema
journalctl -u servizio -f segue un servizio preciso invece dell’intera macchina.
Tenere d’occhio in tempo reale
htop ordina per processore o memoria e permette di uccidere un processo senza uscire.
Copiare a distanza
rsync -av origine/ server:/dest/ riprende da dove si era fermato, a differenza di scp.
Interrogare un URL
curl -i mostra le intestazioni della risposta, il che risolve metà dei dubbi.
Vedere chi ascolta su una porta
ss -ltnp elenca le porte in ascolto con il processo che sta dietro a ciascuna.
Sapere chi tiene aperto un file
lsof file fa il nome del processo che impedisce di smontare o di cancellare.
Programmare un’attività
crontab -e modifica, -l rilegge. Cinque campi: minuto, ora, giorno, mese, settimana.
Creare un collegamento simbolico
ln -s destinazione collegamento. Il percorso della destinazione conviene assoluto.
Confrontare due file
diff -u vecchio nuovo dà il formato che si legge dappertutto altrove.
Estrarre una colonna
awk «{print $2}» tira fuori il secondo campo, qualunque sia il numero di spazi.
Passare un elenco a un comando
find … | xargs -n1 comando applica un comando a ogni risultato, uno per volta.
Ordinare e togliere i doppioni
sort | uniq -c conta le occorrenze; l’ordinamento prima di uniq è obbligatorio.
Verificare un indirizzo
ip a sostituisce ifconfig; ip r mostra da dove escono i pacchetti.
Provare una macchina
ping dice se risponde, non se il servizio gira: sono due domande diverse.
Ripetere un comando
watch -n 2 comando lo rilancia ogni due secondi, sempre nello stesso punto.