¿Hay algún comando de Linux que pueda llamar desde un script Bash que imprima la estructura de directorios en forma de árbol, por ejemplo,
folder1
a.txt
b.txt
folder2
folder3
linux
command-line
usuario243655
fuente
fuente

find. Ofind . -not -path '*/\.*'para ocultar archivos y carpetas que comienzan con.. Si desea tener salida con espacios, como en la pregunta, úsela con este script "buscar prettifier":find . -not -path '*/\.*' | python -c "import sys as s;s.a=[];[setattr(s,'a',list(filter(lambda p: c.startswith(p+'/'),s.a)))or (s.stdout.write(' '*len(s.a)+c[len(s.a[-1])+1 if s.a else 0:])or True) and s.a.append(c[:-1]) for c in s.stdin]"Respuestas:
¿Es esto lo que estás buscando árbol ? Debería estar en la mayoría de las distribuciones (tal vez como una instalación opcional).
muestra tomada de la página web del mantenedor.
Puede agregar la opción
-L #donde#se reemplaza por un número, para especificar la profundidad máxima de recursión.Eliminar
-dpara mostrar también los archivos.fuente
-dpara mostrar archivos también!brew install treeapt-cyg install tree(suponiendo que haya instalado apt-cyg)apt-get install treelo instalará.Puedes usar este:
Mostrará una representación gráfica de los subdirectorios actuales sin archivos en unos segundos , por ejemplo, en /var/cache/:
Fuente
fuente
ls -R | grep ":$" | sed -e 's/:$//' -e 's/[^-][^\/]*\// /g' -e 's/^/ /'.git?find . | sed -e "s/[^-][^\/]*\// |/g" -e "s/|\([^ ]\)/|-\1/"Para agregar la solución de Hassou a su .bashrc, intente:
fuente
alias lst='ls -R | grep ":$" | sed -e '"'"'s/:$//'"'"' -e '"'"'s/[^-][^\/]*\//--/g'"'"' -e '"'"'s/^/ /'"'"' -e '"'"'s/-/|/'"'"''Este comando funciona para mostrar carpetas y archivos .
Salida de ejemplo:
Fuente: Comentario de @javasheriff aquí . Está sumergido como un comentario y publicarlo como respuesta ayuda a los usuarios a detectarlo fácilmente.
fuente
find . |grep -vE 'pyc|swp|__init' | sed -e "s/[^-][^\/]*\// |/g" -e "s/|\([^ ]\)/|-\1/"funcionaba bienEstoy embelleciendo la salida de la respuesta de @ Hassou con:
Esto es muy parecido a la salida de
treeahora:También puedes hacer un alias:
Por cierto,
treeno está disponible en algún entorno, como MinGW. Entonces la alternativa es útil.fuente
También puede usar la combinación de los comandos find y awk para imprimir el árbol de directorios. Para obtener detalles, consulte " Cómo imprimir una estructura de directorio de árbol multinivel utilizando los comandos combinados linux find y awk "
fuente