È il momento di imparare una "lingua" che il sistema saprà riconoscere e che ci permetterà di poter interagire con esso!
Prima di iniziare la carrellata di comandi, ricordiamo una cosa: noi saremo quanto più precisi possibile, ma non ci sarà possibile per evidenti motivi spiegare tutte le opzioni per ogni singolo comando: per ogni informazione aggiuntiva che vi interessi avere rivolgetevi alla pagine di manuale digitando
come abbiamo visto nella lezione sulla documentazione.
Ed è finalmente ora di iniziare con l'esplorazione dei più comuni comandi che il nostro Linux ci mette a disposizione. Il primo comando che vedremo, essenziale per muoversi fra le directory e certamente noto a molti, è cd.
cd Linux
Senza argomenti, cd ci riporta alla nostra home directory; con un argomento, che dovrà essere un nome di directory, cd ci porterà all'interno della directory specificata. Utilizzato con l'argomento -, cd ci riporta alla directory di provenienza. Facciamo un esempio e digitiamo:
per entrare nella directory /tmp. A questo punto digitiamo:
per tornare nella nostra home directory.
Per finire, digitiamo
e ci vedremo ancora in /tmp !
Linux ls e dir
Il secondo comando, anch'esso noto a chi abbia lavorato con un sistema DOS, è dir, che elenca file e directory presenti nella directory corrente, se non altrimenti specificato. Molto spesso, per non dire sempre, al posto di dir si usa il comando ls (abbreviazione per list): essi hanno non solo la stessa funzione, ma anche la stessa identica sintassi: lo potete constatare confrontando le pagine di manuale relative all'uno ed all'altro comando.
Normalmente, ls (o dir) visualizza i file in ordine alfabetico e non visualizza i file nascosti, quelli cioè il cui nome inizia con un punto: per vedere anche questi file, dobbiamo utilizzare l'opzione -a (all) che ci svelerà la presenza anche di due directory: "." e ".."; la prima è la rappresentazione della directory corrente, la seconda della directory precedente nell'albero delle directory: così, con:
vedremo la lista dei file e delle directory presenti nella directory corrente, con
vedremo invece la lista dei file e delle directory (d'ora in poi generalizzeremo dicendo solo "file") presenti nella directory "madre" della directory corrente.
Inoltre, per vedere il contenuto di una directory senza dovercisi spostare, è ovviamente possibile digitare
Opzioni di ls
Ma torniamo alle opzioni di ls: con -l potremo utilizzare il "long listing format", che ci darà maggiori informazioni sui file. Un output potrebbe essere questo:
-rw-r--r-- 1 edo edo 9306 mag 28 18:41 prova.txt drwxr-sr-x 5 edo edo 4096 gen 13 2001 GNUstep drwx--S--- 2 edo edo 4096 apr 18 02:08 Mail drwxr-sr-x 2 edo edo 4096 lug 21 17:23 mirrored drwx--S--- 2 edo edo 4096 gen 8 2001 nsmail -rw-r----- 1 edo edo 155403 ago 12 11:42 out.jpeg drwxr-sr-x 2 edo edo 4096 apr 9 01:56 prove drwxr-sr-x 2 edo edo 4096 mar 8 15:38 public_html
Qui notiamo molte informazioni in più su ogni file, non solo il suo nome! Ad esempio, vediamo a chi appartiene, la sua grandezza e la data di creazione. Per il blocco di informazioni riportate sulla sinistra non abbiate fretta: lo esamineremo in seguito; per il momento, sappiate solo che è un insieme di caratteri che definiscono le caratteristiche di ogni file.
Altre opzioni, forse meno utilizzate ma sempre utili sono:
-h | che esprime la grandezza del file in formato più facilmente leggibile (ad esempio, 2K, 32M, 4G, etc.); non ha senso se utilizzato da solo, ma può essere utile accoppiato con -l |
--color | che distingue tramite colori i i tipi di file |
-S | per ordinare i file in ordine di grandezza discendente |
-t | per odrinare i file in ordine di creazione discendente (i più recenti in alto) |
Per avere tutte le possibili opzioni relative al comando ls, vi rimandiamo alla pagina di manuale del comando stesso.
Il comando "ls" su Linux: visualizzare file e cartelle e trovare gli ultimi file modificati
Il comando "ls" su Linux: visualizzare file e cartelle e trovare gli ultimi file modificati- Come usare il comando ls
- Formato elenco lungo
- Mostra file nascosti
- Ordinamento dell'uscita
- Elenca sottodirectory ricorsivamente
- Conclusione
Il comando ls è uno dei comandi di base che qualsiasi utente Linux dovrebbe conoscere. Viene utilizzato per elencare informazioni su file e directory all'interno del file system. L'utility ls fa parte del pacchetto GNU core utilities che è installato su tutte le distribuzioni Linux.
In questo tutorial, ti mostreremo come utilizzare il comando ls attraverso esempi pratici e spiegazioni dettagliate delle opzioni ls più comuni.
Come usare il comando ls
La sintassi per il comando ls è la seguente:
ls
Se utilizzato senza opzioni e argomenti, ls visualizza un elenco dei nomi di tutti i file nella directory di lavoro corrente:
ls
I file sono elencati in ordine alfabetico:
cache db empty games lib local lock log mail opt run spool tmp
Per elencare i file in una directory specifica, passare il percorso alla directory come argomento al comando ls. Ad esempio, per elencare il contenuto della directory /etc digitare:
ls /etc
Puoi anche passare più directory e file al comando ls separato da spazio:
ls /etc /var /etc/passwd
Se l'utente che ha effettuato l'accesso non dispone delle autorizzazioni di lettura per la directory, verrà visualizzato un messaggio che ls che non è possibile aprire la directory:
ls /root
ls: cannot open directory '/root': Permission denied
Il comando ls ha una serie di opzioni. Nelle sezioni seguenti, esploreremo le opzioni più comunemente utilizzate.
Formato elenco lungo
L'output predefinito del comando ls mostra solo i nomi dei file e delle directory, il che non è molto informativo.
L'opzione -l (L minuscola) fa sì che ls stampi i file in un formato di elenco lungo.
Quando viene utilizzato il formato di elenco lungo, il comando ls visualizzerà le seguenti informazioni sul file:
- Il tipo di file Autorizzazioni file Numero di collegamenti reali al file Proprietario file Gruppo file Dimensione file Data e ora Nome file
Considera il seguente esempio:
ls -l /etc/hosts
-rw-r--r-- 1 root root 337 Oct 4 11:31 /etc/hosts
Spieghiamo le colonne più importanti dell'output.
Il primo carattere mostra il tipo di file. Nel nostro esempio, il primo carattere è - che indica un file normale. I valori per altri tipi di file sono i seguenti:
- - - File normale b - Blocca file speciale c - File speciale di caratteri d - Directory l - Collegamento simbolico n - File di rete p - FIFO s - Presa
I prossimi nove caratteri mostrano i permessi del file. I primi tre caratteri sono per l'utente, i tre successivi sono per il gruppo e gli ultimi tre sono per gli altri. È possibile modificare le autorizzazioni del file con il comando chmod . Il carattere di autorizzazione può assumere il seguente valore:
- r - Autorizzazione a leggere il file w - Autorizzazione a scrivere sul file x - Autorizzazione ad eseguire il file s - bit setgid t - bit appiccicoso
Nel nostro esempio, rw-r--r-- significa che l'utente può leggere e scrivere il file, e il gruppo e altri possono solo leggere il file. Il numero 1 dopo i caratteri di autorizzazione è il numero di collegamenti diretti a questo file.
I due campi successivi root root mostrano il proprietario del file e il gruppo, seguiti dalla dimensione del file ( 337 ), mostrata in byte. Utilizzare l'opzione -h se si desidera stampare formati in un formato leggibile dall'uomo. Puoi cambiare il proprietario del file usando il comando chown .
Oct 4 11:31 è la data e l'ora dell'ultima modifica del file.
L'ultima colonna è il nome del file.
Mostra file nascosti
Per impostazione predefinita, il comando ls non mostrerà i file nascosti. In Linux, un file nascosto è qualsiasi file che inizia con un punto ( . ).
Per visualizzare tutti i file inclusi i file nascosti utilizzare l'opzione -a :
ls -la ~/
drwxr-x--- 10 linuxize linuxize 4096 Feb 12 16:28. drwxr-xr-x 18 linuxize linuxize 4096 Dec 26 09:21.. -rw------- 1 linuxize linuxize 1630 Nov 18 2017.bash_history drwxr-xr-x 2 linuxize linuxize 4096 Jul 20 2018 bin drwxr-xr-x 2 linuxize linuxize 4096 Jul 20 2018 Desktop drwxr-xr-x 4 linuxize linuxize 4096 Dec 12 2017.npm drwx------ 2 linuxize linuxize 4096 Mar 4 2018.ssh
Ordinamento dell'uscita
Come già accennato, per impostazione predefinita il comando ls elenca i file in ordine alfabetico.
L'opzione --sort ti consente di ordinare l'output per estensione, dimensione, tempo e versione:
- --sort=extension (o -X ) - ordina alfabeticamente per estensione. --sort=size (o -S ) - ordina per dimensione del file. --sort=time (o -t ) - ordina per tempo di modifica. --sort=version (o -v ) - -v naturale dei numeri di versione.
Ad esempio, per ordinare i file nella directory /var base al tempo di modifica nell'ordinamento inverso, utilizzare:
ls -ltr /var
Vale la pena ricordare che il comando ls non mostra lo spazio totale occupato dal contenuto della directory. Per ottenere la dimensione di una directory usa il comando du .
Elenca sottodirectory ricorsivamente
L'opzione -R indica al comando ls di visualizzare ricorsivamente il contenuto delle sottodirectory:
ls -R
Conclusione
Il comando ls elenca informazioni su file e directory.
Per maggiori informazioni su ls visita la pagina GNU Coreutils o digita man ls nel tuo terminale.
È il terminale