GNU/Linux >> Tutoriales Linux >  >> Linux

Listar contenidos de tarball en formato de árbol

Existen varios scripts para convertir una lista de nombres de rutas en forma de árbol:

  • mi propio treeify.pl
  • treeify.rs por Loïc Damien
  • treeify.py por Hakril

Todos estos scripts funcionan con tar -tf … producción; por ejemplo:

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

También:

$ 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

Esto es solo una adición a la respuesta del usuario 1686, aunque no tengo suficiente reputación para comentar. Si bien sus guiones ciertamente funcionan bien, deben descargarse mientras tree en realidad puede hacer esto de forma nativa:

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

4 directories, 3 files

Tenga en cuenta que, a diferencia de la mayoría de las herramientas, tree usa un punto . y no un guión - para leer la entrada desde 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.

Esto permite usar las funciones de árbol típicas como comodines, aunque los tamaños obviamente no se pueden mostrar y el argumento de nivel (-L ) aparentemente tampoco funciona...


Linux
  1. Sin lista de tipos en ISPConfig 3.1.11

  2. El Bash'?

  3. Enumere los archivos de forma recursiva en la CLI de Linux con la ruta relativa al directorio actual

  4. Cómo enumerar recursivamente todos los archivos y directorios

  5. ¿Estructura de directorio de CentOS como árbol?

Mostrar la salida del comando o el contenido del archivo en formato de columna

Cómo enumerar el contenido de un paquete en Linux

Diferentes formas de enumerar los contenidos del directorio sin usar el comando ls

Cómo mostrar el contenido del archivo en formato de columna en la terminal de Linux

¿Cómo listar el contenido de un paquete usando YUM?

Formato de archivo de volcado del núcleo