Gestione dei file

È elenca solo le directory in modo ricorsivo in Linux??

È elenca solo le directory in modo ricorsivo in Linux??

La parola "ricorsiva" si riferisce al fatto che i comandi di un sistema operativo Linux o Unix si occupano del contenuto delle cartelle e se una cartella ha sottocartelle e documenti, l'istruzione funziona ancora con tutti quei documenti (in modo ricorsivo). Potrebbe essere possibile che la directory figlio abbia il proprio set di file e cartelle (ad esempio cartelle di grandi dimensioni), e così via. Utilizzerai diverse istruzioni Linux per attraversare ricorsivamente ogni cartella prima di arrivare al bordo della cartella specificata. A quel livello, le istruzioni di Linux tornano a un bivio dell'albero e ripetono il processo per tutte le sottocartelle esistenti. In questo tutorial imparerai tutti i metodi per elencare le directory in modo ricorsivo.

Esempi di directory di elenchi semplici

Prima di tutto, devi sapere come elencare tutte le directory dal tuo sistema Linux usando il semplice comando list. Apri il terminale della riga di comando e prova il comando "ls'" seguente per elencare solo le directory. Non elencherà solo le directory ma il numero totale di sottocartelle e file che risiedono in esse. L'output mostra le cartelle con le informazioni relative al proprietario, al gruppo, ai privilegi di lettura-scrittura e alla data di creazione delle cartelle.

$ ls -l

Per elencare tutte le directory e i file all'interno del tuo sistema Linux, devi usare "-la" invece del semplice "-l" nel comando list. Quindi, esegui il comando aggiornato per farlo. L'output mostra tutti i file e le cartelle insieme alle loro informazioni aggiuntive.

$ ls -la

Per elencare semplicemente le directory senza ulteriori informazioni, prova il comando seguente seguito dal flag "-d".

$ ls -d */

Puoi anche usare lo stesso comando con poche modifiche per elencare le cartelle insieme alle loro informazioni aggiuntive. Devi solo aggiungere il flag "-l" all'interno di questo comando come segue:

$ ls -l -d */

Per controllare solo il numero totale di file nella directory home specifica, prova il comando presentato di seguito nella shell. Otterrai il numero totale di file nel tuo sistema operativo Linux.

$ ls -l | egrep -v '^d'

Esempio di elenco di directory in modo ricorsivo

Ci sono diversi tipi di comandi ricorsivi disponibili nei sistemi Linux, che possono essere usati per elencare le directory in modo ricorsivo. Per comprenderli separatamente, supponi di avere 5 file nella directory Linux denominati "Documenti".

Elenca ricorsivamente utilizzando il flag "-lR"

Usare il flag "-lR" nella tua query per elencare in modo ricorsivo tutte le directory del tuo sistema Linux è il primo metodo per farlo. All'esecuzione del comando list di seguito, elencherà tutte le cartelle e le loro sottocartelle insieme ai loro dettagli bonus, come mostrato nell'output.

$ ls -lR

Elenchiamo ricorsivamente tutti i file o le cartelle da una cartella o directory specifica del tuo sistema Linux. A questo scopo, aggiungi il percorso della directory specifica per elencarla in modo ricorsivo. Vogliamo elencare in modo ricorsivo tutti i file e le cartelle della directory "Documents" che risiedono nella directory "home" utilizzando il comando di seguito aggiornato. L'output mostra tutti i file e le cartelle all'interno della cartella "Documenti" insieme alle sue informazioni extra.

$ ls -lR /home/aqsayasin/Documenti/

Elenca ricorsivamente utilizzando il comando "Trova"

Metti in chiaro che non tutti i sistemi Linux, e.g., macOS, sistema operativo simile a Unix, può scegliere di usare "-R" per elencare le directory. In tal caso, ci sono altri comandi disponibili per soddisfare le nostre esigenze che sono il comando "trova" e "stampa". In questo comando, daremo un percorso a una cartella insieme alla leva dell'uso del comando "-ls". Quando viene utilizzato "-ls" nel comando, ciò significa che mostrerà anche le informazioni aggiuntive relative ai file e alle cartelle residenti di una directory specifica. Prova il comando indicato di seguito nella shell per elencare in modo ricorsivo tutti i file e le cartelle della directory "Documenti".

$ find /home/aqsayasin/Documents/ -print -ls

Ora, devi provare le stesse istruzioni nella shell con un piccolo cambiamento. Eviteremo di utilizzare il flag "-ls" in questo comando per interrompere la visualizzazione delle informazioni aggiuntive relative ai file. Esegui la query sotto elencata nella shell e avrai l'output visualizzato.

$ trova /home/aqsayasin/Documents/ -print

Elenca ricorsivamente usando il comando "-du"

Diamo un'occhiata a un altro esempio per elencare in modo ricorsivo i file o le directory con un altro nuovo metodo. Questa volta utilizzeremo il comando "-du" per raggiungere il nostro scopo. Questo comando contiene il flag "-a". Insieme ai flag, dobbiamo specificare anche la posizione della directory. Eseguiamo le istruzioni seguenti nella shell del terminale per elencare in modo ricorsivo tutte le cartelle o i file della directory "Documenti". L'output mostra i 5 record per esso, come mostrato di seguito. Puoi vedere che questo comando mostra anche il numero di morsi che risiedono in ciascun file.

$ du -a /home/aqsayasin/Documenti/

Elenca ricorsivamente usando il comando "albero"

Ultimo ma non meno importante, abbiamo un metodo di comando "albero" molto semplice e facile da usare per elencare in modo ricorsivo i file o le cartelle. Finora non useremo alcun flag in questo comando. Devi specificare la posizione della directory insieme alla parola chiave "albero". Facciamone un esempio usando il comando elencato di seguito. L'output mostra l'output di tipo ramificato “ad albero” della directory “Documents”. Mostra 0 directory e 5 file nell'output.

$ albero /home/aqsayasin/Documenti/

Proviamo lo stesso comando "albero" con una posizione diversa. Questa volta stiamo elencando ricorsivamente le cartelle della directory 'Home' dell'utente “aqsayasin”. L'output mostra i rami della cartella "Home" con un totale di 14 diverse cartelle, sottocartelle e 5 file.

$ albero /home/aqsayasin/

Conclusione

Abbiamo provato tutti i metodi ricorsivi per elencare ricorsivamente le directory e i file, e.g., Flag "-lR", trova e stampa, du e comando ad albero

I 5 migliori giochi arcade per Linux
Al giorno d'oggi, i computer sono macchine serie utilizzate per i giochi. Se non riesci a ottenere il nuovo punteggio più alto, saprai cosa intendo. I...
Battaglia per Wesnoth 1.13.6 Sviluppo rilasciato
Battaglia per Wesnoth 1.13.6 rilasciato il mese scorso, è la sesta versione di sviluppo nella 1.13.x e offre una serie di miglioramenti, in particolar...
Come installare League Of Legends su Ubuntu 14.04
Se sei un fan di League of Legends, questa è un'opportunità per testare League of Legends. Nota che LOL è supportato su PlayOnLinux se sei un utente L...