Seguici su Telegram, ne vale la pena ❤️ ➡ @trovalost
Vai al contenuto

Terminale Mac: guida ai principali comandi

Due parole introduttive, in questa nuova guida che ho scritto, sull’uso del terminale del Mac: si tratta di una shell che eredita i comandi di UNIX e che è stata integrata, nonchè parzialmente riprogrammata, dal team della Apple.

Aprire più finestre del terminale

Cliccando con due dita sull’icona, dopo aver aperto la finestra, se ne possono lanciare più di una in contemporanea, eventualmente di colori differenti, utile ad esempio se state procedendo a lavorare su due o più cartelle diverse del sistema (ad esempio WWW e la directory di configurazione di un software).

Nota: qualsiasi comando eseguito via terminale può essere interrotto digitando CTRL C (necessario per interrompere i ping, ad esempio).

Screen 2014-08-04 alle 10.21.58

Impostare il colore della finestra del terminale

La prima cosa che impararemo a fare riguarda il colore della finestra, che può essere bianca su sfondo nero (Basic) ma ci sono anche molte altre combinazioni (Grass, Homebrew, …).

Screen 2014-08-04 alle 10.21.45

Compralo su Amazon: Apple MacBook Air a meno di 1000 euro

Come è fatto un comando del terminale: sintassi

Premesso questo, bisogna inquadrare quella che è la struttura generale di un comando da terminale, che è caratterizzato da:

  1. nome;
  2. eventuali opzioni;
  3. argomento.

In pratica questa struttura corrisponderebbe ad un qualcosa tipo:

  1. cosa fare (ad esempio creare o cancellare un file);
  2. come farlo (in modalità  binaria, come file di testo, oppure in modo permanente);
  3. dove farlo (ad esempio un file o una directory).

Ad esempio:

chmod -r 777 /path/to/some/file

in cui eseguiamo chmod (che è il comando utile per impostare i permessi di qualsiasi file o directory) con parametri -r 777 su /path/to/some/file.

I due comandi base da conoscere sono ls e cd: il primo permette di listare i file nella directory corrente, mentre il secondo vi permette di navigare nelle directory di sistema.

Comandi base: ls

Alcuni esempi:

ls

che mostra, nella directory base:

Applications		bin			private
Contents		cores			prova.mat.wings
Incompatible Software	dev			sbin
Library			etc			sockets.log
Network			home			tmp
System			mach_kernel		usr
Users			net			var
Volumes			

Comandi base: cd

cd non fa altro che farvi navigare nel filesystem, quindi ad esempio:

Indietro di un livello:

cd ..

Alla root di sistema:

cd \

Tutti gli altri comandi

Quanti sono i comandi disponibili? Per vedere la lista completa dei comandi (sono 1514 su Mavericks) lasciate premuto ESC e digitate Y quando richiesto.

Come faccio a vedere la cartella in cui mi trovo?

Per vedere il nome del path (assoluto) della directory corrente, cioè il nome della cartella in cui vi trovate, digitate semplicemente:

pwd

che non è un comando relazionato con le password, bensଠcon l’acronimo print working directory.

Come faccio a vedere il mio nome utente?

La crisi d’identità , ovvvero scoprire quale sia il proprio nome utente nel Mac, si risolve facilmente digitando:

whoami

Accedere come super utente / amministratore

Per accedere in modalità  superuser ed avere il massimo dei privilegi, premettete a qualsiasi comando della forma vista al punto 0 con il comando su, esempio:

sudo command123 -p1 -p2 123 ...

Attenzione che se accedete in modalità  su 1) vi sarà  richiesta la password di root (che non apparirà  mentre la digitate) 2) qualsiasi comando potrà  essere eseguito, ivi compresa la cancellazione o modifica di file importanti. Fate quindi molta attenzione a come ne fate uso.

Editare file di testo con pico

Il terminale Apple eredita molto dalla shell UNIX, e naturalmente ne contiene i suoi programmi più interessanti: uno dei miei preferiti è pico, un editor di testo abbastanza potente, che potete vedere digitando:

pico

oppure:

pico nomefile.txt

e su cui vi suggerisco un rapido tutorial (in inglese) prima di farne uso. Serve più che altro in SSH, in effetti, ma è opportuno conoscerlo per i casi di manutenzione di emergenza, ad esempio.

Mostrare i file nascosti del Mac

Il terminale è interessante perchè introduce parecchie opzioni a basso livello, non disponibili mediante interfaccia grafica e che, naturalmente, vanno impostate con piena consapevolezza di quello che si fa (leggasi: nella maggioranza dei casi è bene non “giocare” con questi comandi). Premesso questo, le potenzialità  del terminale esplodono quando si scopre che puoi, ad esempio, mostrare i file nascosti nell’interfaccia grafica (utile in certi casi, si ripristina mandando il comando con FALSE al posto di TRUE):

defaults write com.apple.finder AppleShowAllFiles TRUE

defaults è il comando per accedere alle impostazioni di sistema di OS, e permette di effettuare moltissime operazioni simili.

Fare screenshot del terminale

Con CMD + SHIFT + 4 si crea una screenshot di una porzione di schermo (CMD + SHIFT + 3 di tutto): per cambiare il formato di generazione del file, e mettere ad esempio file JPG:

defaults write com.apple.screencapture type JPG

Per cambiare la cartella in cui vengono salvati i file degli screen:

defaults write com.apple.screencapture location ~/MiacartellaScreen

dove MiacartellaScreen va messa la cartella che volete, mentre ~/ (la “tilde”) sta ad indicare la home directory.

Per attivare subito le modifiche potete digitare di seguito:

killall SystemUIServer

Impostare i privilegi sui file: chmod

Con chmod è possibile impostare i privilegi dell’utente sui file: il codice di tre cifre corrisponde al livello di permesso in lettura, scrittura ed esecuzione, e varia a seconda dei casi.

Esempio di massimo privilegio (sconsigliato nella maggioranza dei casi):

sudo chmod 777 /path/assoluto/fino/al/file.abc

che assegna tutti i permessi all’utente corrente, al gruppo e a tutti gli altri.

Esempio di permesso che imposta lettura, scrittura ed esecuzione (7) per il proprietario (prima cifra), e lettura ed esecuzione (i due 5) per gruppo (seconda cifra) ed altri (terza cifra).:

sudo chmod 755 /path/assoluto/fino/al/file.abc

chmod funziona sia su singoli file e cartelle, che in modo ricorsivo su gruppi di essi. Per maggiori informazioni leggere la documentazione ufficiale – altro discorso se vuoi sapere come usare chmod su WordPress, in questo caso leggi qui.

Cancellare lo spazio libero in modo sicuro

Questo serve a evitare che i file cancellati siano recuperabili mediante vari tool, utile per la privacy se state pensando di vendervi un Mac ad esempio. Come faccio a cancellare lo spazio libero via terminale? àˆ presto detto:

diskutil secureErase freespace 3 /Volumes/name-of-drive

Attenzione che la cancellazione ripassa per 35 volte sullo spazio libero, per cui potrebbe richiedere molto tempo per essere completata, periodo nel quale è bene interrompere qualsiasi attività  sul vostro Mac.

Connettersi via SSH

Come fare una connessione SSH? SSH serve a instaurare sessioni di lavoro remote su macchine esterne, ad esempio il vostro cloud o VPS. Per operare in questa direzione la sintassi tipica è la seguente:

ssh [email protected]

che permette di collegarsi come root all’IP aaa.bbb.ccc.ddd. Attenzione che queste connessioni sono normalmente regolamentate da un certificato di autenticazione che dovrete installare una tantum (vedi qui per i necessari approfondimenti).
Per approfondire la questione date uno sguardo ai vari tutorial di questo sito sull’argomento shell remota.

Pingare un host

Per effettuare un ping su un host, cioè per valutare i suoi tempi di risposta, si scrive:

ping miohost.it

dove miohost.it può essere sostituito da un IP.

Testare se una pagina web funziona

Per testare il funzionamento di una pagina web basta invece digitare:

curl -V sito.it

che restituisce il markup della pagina e la sua risposta codificata (codice 200 per dire “tutto ok”, 404 per pagina mancante, 301 per redirect permanente, 302 per temporaneo, 500 per errore irreversibile e cosଠvia).

Cercare pattern in un file

Per cercare pattern di testo nei vostri file utilizzerete grep:

grep -ic qualcosa file.txt

che cerca le occorrenze del pattern “qualcosa” dentro file.txt.

Cercare pattern in più di un file

Per cercare pattern di testo dentro tutti i file in una cartella, non dovrete fare altro che andare nella cartella desiderata e poi lanciare:

grep -lr "cosa cerchi" *

che cerca le occorrenze della frase “cosa cerchi” dentro tutti i file, in modo ricorsivo, a partire dalla posizione corrente.

Confrontare due file

Per confrontare due file (ad esempio due versioni di codice), invece, si scrive:

diff -y firstfile secondfile

Fare un backup del Mac (Time Machine)

Per fare un backup del Mac si usa solitamente Time Machine, per quanto sia possibile controllarlo da terminale mediante tmutil. Per avviare un backup:

tmutil startbackup

per stopparlo:

tmutil stopbackup

Monitorare i processi attivi

Per controllare le prestazioni del Mac, ovvero tutti i processi in esecuzione al momento, digitate:

top

Killare o fermare un programma

Per “uccidere” i processi indesiderati:

sudo kill PID-number

dove il PID-number viene indicato da top nella colonna corrispondente. Fate molta attenzione, anche qui, a quello che fate ed al perchè lo fate, perchè potreste facilmente compromettere il funzionamento del sistema.

Cerca prodotti Apple su Amazon.it

è venuto il momento di passare in rassegna i vari shortcut, i comandi base e quelli per la gestione dei file.

Alcuni sono identici a quelli che utilizzereste in ambiente Linux, in particolare in una derivazione della FreeBSD, con la differenza che nel terminale Mac ci sono comandi extra, in alcune circostanze non molto ben documentati.

Se avete un Macbook o un altro computer Apple recente, questi sono i principali comandi che potrete impartire al sistema: sono tratti da questa pagina di GitHub che ho tradotto (ed in parte esteso) per vostra comodità , anche basandomi su una delle migliori guide in circolazione (quella di MacRumors).

Cerca prodotti Apple su Amazon.it

Attenzione: utilizzateli sempre con la massima cautela e cercando di capire bene quello che state facendo. I comandi “a rischio” potrebbero cancellare o alterare file del sistema, per quanto nel farlo sarà  sempre attiva la protezione su (SuperUser), che consiglio di sfruttare solo in caso di reale necessità .

Buona consultazione!

SHORTCUT o “abbreviazioni” mediante tastiera

Tasto Cosa fa?
Ctrl + A Sposta il cursore ad inizio riga
Ctrl + E Sposta il cursore ad fine riga
Ctrl + L Pulisce lo schermo
Command + K Pulisce lo schermo
Ctrl + U Azzera la riga che state scrivendo
Ctrl + H Backspace
Ctrl + R Cerca nello storico dei comandi
Ctrl + C Stoppa qualsiasi processo attivo nella finestra
Ctrl + D Esce dalla shell del terminale
Ctrl + Z Mette in esecuzione in background il processo correntemente attivo, fg lo rimette in attività
Ctrl + W Cancella l’ultima parola digitata
Ctrl + K Cancella la linea prima del cursore
Ctrl + T Scambia gli ultimi due caratteri prima del cursore
Ctrl + F Sposta il cursor un carattere avanti
Ctrl + B Sposta il cursor un carattere indietro
Esc + F Sposta il cursor un carattere avanti
Esc + B Sposta il cursor un carattere indietro
Esc + T Scambia le ultime due parole prima del cursore
Tab Completa in automatico il nome del comando di sistema, proponendovi più suggerimenti se esistono

 COMANDI PRINCIPALI DEL TERMINALE

cd Vai alla directory home
cd [directory] Vai alla [directory] – può essere un path assoluto o relativo alla posizione in cui vi trovate nella directory
cd ~ Vai alla directory home (~ si fa con ALT 5)
cd / Vai alla root del sistema (da qui in poi cautela)
ls Mostra file e directory nella cartella corrente
ls -l Mostra file e directory nella cartella corrente con maggiori dettagli
ls -a Mostra file e directory nella cartella corrente mostrando i file nascosti
ls -lh Mostra file e directory nella cartella corrente con maggiori dettagli in forma leggermente più leggibile
ls -R Scopri il contenuto di una cartella corrente in modo ricorsivo (può richiedere molto tempo, se lo fate nella cartella root scoprirà , per intenderci, l’intero contenuto dell’hard disk)
sudo [comando] Esegue il [comando] specificato in modalità  Super User (maneggiare con cautela)
open [file] Apre il [file] esattamente come se ci faceste doppio-click
top Mostra i processi attivi nel sistema – utile per capire se ci siano malware o processi che occupano troppe risorse (premi Q per uscire)
nano [file] Apre il [file] con l’editor nano (guida ufficiale)
pico [file] Apre il [file] con l’editor pico (guida ufficiale)
q Esce dal terminale
clear Pulisce interamente lo schermo

STORICO COMANDI

history k Mostra gli ultimi k comandi digitati
ctrl-r Cerca tra gli ultimi comandi digitati
![abc] Riesegue l’ultimo comando che inizia con ‘abc’
!! Riesegue l’ultimo comando

GESTIONE FILE

touch [file] Crea un nuovo [file]
pwd Mostra il path della directory corrente
.. Mostra la directory padre della corrente
ad esempio: cd .. torna indietro di un livello
ad esempio: cd ../../ torna indietro di due livelli
. Mostra la directory corrente
cat [file] Mostra il contenuto di [file] a schermo
rm [file] Cancella un [file] (usare con cautela)
rm -i [file] Cancella un [file] chiedendo conferma (usare con cautela)
rm -r [dir] Cancella un [file] in modo ricorsivo (usare con molta cautela)
rm -f [file] Cancella un [file] senza chiedere conferma (usare con molta cautela)
cp [x] [y] Crea una copia del file [x] con nome [y]
cp [file] [dir] Copia [file] nella [directory]
mv [file] [dove-cosa] Sposta (ma anche rinomina) [file] come / in [dove-cosa]

GESTIONE DIRECTORY

mkdir [directory] Crea [directory]
mkdir -p [altra]/[directory] Crea [altra]/[directory]
rmdir [directory] Cancella directory (solo se sono vuote, usare con cautela)
rm -R [directory] Cancella ricorsivamente directory (usare con cautela)

 PIPE

more Mostra il contenuto dell’output del comando in finestre progressive
> [file] Scrive l’output su file (sovrascrive i vecchi contenuti)
>> [file] Scrive l’output su file (appende i vecchi contenuti)
< Dice al comando di leggere da file l’input

 AIUTO & GUIDE INTEGRATE

[comando] -h Mostra aiuto per il [comando]
[comando] —help Mostra aiuto per il [comando]
[comando] help Mostra aiuto per il [comando]
reset Reset del display del terminale
man [comando] Mostra aiuto per il [comando]
whatis [comando] Mostra descrizione del [comando]

Compralo su Amazon: Apple MacBook Air

 

Da non perdere 👇👇👇



Questo portale web esiste da 4448 giorni (12 anni), e contiene ad oggi 4895 articoli (circa 3.916.000 parole in tutto) e 13 servizi online gratuiti. – Leggi un altro articolo a caso
4.64/5 (14)

Ti sembra utile o interessante? Vota e fammelo sapere.

Questo sito contribuisce alla audience di sè stesso.
Il nostro network informativo: Lipercubo.it - Pagare.online - Trovalost.it.