GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Listet den Inhalt des Tarballs im Baumformat auf

Es gibt mehrere Skripte, um eine Liste von Pfadnamen in Baumform umzuwandeln:

  • meine eigene treeify.pl
  • treeify.rs von Loïc Damien
  • treeify.py von Hakril

Alle diese Skripte funktionieren mit tar -tf … Ausgang; zum Beispiel:

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

Auch:

$ 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

Dies ist nur ein Nachtrag zur Antwort von user1686, obwohl ich nicht genug Ruf habe, um einen Kommentar abzugeben. Obwohl seine Skripte ihre Arbeit sicherlich gut machen, müssen sie während tree heruntergeladen werden kann dies tatsächlich nativ tun:

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

4 directories, 3 files

Beachten Sie, dass im Gegensatz zu den meisten Tools tree verwendet einen Punkt . und kein Bindestrich - um Eingaben von stdin zu lesen:

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.

Dadurch können die typischen Baumfunktionen wie Wildcards verwendet werden, obwohl Größen offensichtlich nicht angezeigt werden können, und das Ebenenargument (-L ) geht anscheinend auch nicht...


Linux
  1. Konvertieren Sie die Ausgabe des Baumbefehls in das Json-Format?

  2. Bash \xc3\x89 in É konvertieren?

  3. Linux-ls-Befehl - Dateien auflisten

  4. Wie listet man den Inhalt eines Pakets mit YUM auf?

  5. Listen Sie Dateien rekursiv in der Linux-CLI mit Pfad relativ zum aktuellen Verzeichnis auf

So listen Sie den Inhalt eines Pakets in Linux auf

Verschiedene Möglichkeiten zum Auflisten von Verzeichnisinhalten ohne Verwendung des Befehls ls

So zeigen Sie Dateiinhalte im Spaltenformat im Linux-Terminal an

Liste aller Ordner und Unterordner

Jede Unterverzeichnisgröße in einem Listenformat mit einem Zeilenbefehl in Bash anzeigen?

So listen Sie den Kernel-Gerätebaum auf