GNU/Linux >> Linux Esercitazione >  >> Linux

Elenca i contenuti di tarball in formato albero

Esistono diversi script per convertire un elenco di nomi di percorso in forma di albero:

  • il mio treeify.pl
  • treeify.rs di Loïc Damien
  • treeify.py di Hakril

Tutti questi script funzionano con tar -tf … produzione; ad esempio:

$ tar -tf foo.tar | treeify
foo
 ├─bar
 │  ├─myfile.txt
 │  └─yourfile.txt
 └─baz
    └─qux
       └─hisfile.txt

Inoltre:

$ bsdtar -tf foo.zip | treeify
$ find /dir -size +5 | treeify
$ git ls-files       | treeify
$ pacman -Qql foopkg | treeify
$ unrar vb foo.rar   | treeify
$ zipinfo -1 foo.zip | treeify
$ gsettings list-schemas   | treeify -s. -f
$ qdbus | sed -n "s/^ //p" | treeify -s. -f
$ ldns-walk netbsd.org | awk '{print $1}' | treeify -s. -f -R

Questo è solo un addendum alla risposta di user1686 anche se non ho abbastanza reputazione per commentare. Sebbene i suoi script facciano sicuramente bene il lavoro, devono essere scaricati mentre tree può effettivamente farlo in modo nativo:

$ tar tf foo.tar | tree --fromfile .
.
└── foo
    ├── bar
    │   ├── myfile.txt
    │   └── yourfile.txt
    └── baz
        └── qux
            └── hisfile.txt

4 directories, 3 files

Nota che a differenza della maggior parte degli strumenti tree utilizza un punto . e non un trattino - per leggere l'input da stdin:

INPUT OPTIONS
    --fromfile
        Reads a directory listing from a file rather than the file-system.
        Paths provided on the command line are files to read from rather than directories to search.
        The dot (.) directory indicates that tree should read paths from standard input.

Ciò consente di utilizzare le tipiche funzioni ad albero come i caratteri jolly sebbene le dimensioni ovviamente non possano essere visualizzate e l'argomento del livello (-L ) apparentemente anche non funziona...


Linux
  1. Visualizza l'output dei comandi o il contenuto del file in formato colonna

  2. Converti l'output del comando ad albero in formato Json?

  3. Bash Converti \xc3\x89 in É?

  4. Visualizzare ciascuna dimensione della sottodirectory in un formato elenco utilizzando un comando di riga in Bash?

  5. Come elencare l'albero dei dispositivi del kernel

Come elencare il contenuto di un pacchetto in Linux

Diversi modi per elencare i contenuti della directory senza utilizzare il comando ls

Come visualizzare il contenuto del file in formato colonna nel terminale Linux

Struttura della directory CentOS come albero?

Formato file core dump

Elenco di tutte le cartelle e sottocartelle