Domanda

Sto cercando un modo per elencare tutti i file in una directory escludendo le directory di se stessi, ei file in queste sottodirectory.

Quindi, se ho:

./test.log
./test2.log
./directory
./directory/file2

Voglio un comando che restituisce:. ./Test.log ./test2.log e nient'altro

È stato utile?

Soluzione

Se si desidera test.log, test2.log, e file2 poi:

find . -type f

Se non si desidera file2 poi:

find . -maxdepth 1 -type f

Altri suggerimenti

Se avete bisogno di link simbolici, tubi, file di dispositivo e altri elementi specifici del file system per essere elencati anche, si dovrebbe usare:

find -maxdepth 1 -not -type d

Questo elenco di tutto, tranne che le directory.

usando find è semplice come:

find . -maxdepth 1 -type f
find . -type f
find /some/directory -type f
$ find . -type f -print

Ogni file sarà sulla propria riga. È necessario essere nella directory che si desidera effettuare la ricerca.

Una possibilità più

ls -ltr | grep ^d
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top