Código de Linux/Unix Shell Scripting - Script que muestra el arbol de directorios

Imágen de perfil

Script que muestra el arbol de directoriosgráfica de visualizaciones


Linux/Unix Shell Scripting

Publicado el 1 de Junio del 2012 por Administrador (686 códigos)
12.780 visualizaciones desde el 1 de Junio del 2012
Script para mostrar en forma de árbol los directorios contenidos en un directorio dado utilizando una función recursiva

Versión 1

Publicado el 1 de Junio del 2012gráfica de visualizaciones de la versión: Versión 1
12.783 visualizaciones desde el 1 de Junio del 2012
estrellaestrellaestrellaestrellaestrella
estrellaestrellaestrellaestrella
estrellaestrellaestrella
estrellaestrella
estrella


Forma parte de Script aggiuntivi
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
#!/bin/bash
 
# Script para mostrar en forma de arbol los directorios contenidos en un directorio
# dado utilizando una funcion recursiva
#
# Script realizado por Stephane Chazelas
# http://www.pluto.it/files/ildp/guide/abs/contributed-scripts.html
#
# Puede recibir como parametro la ruta donde empezar. Si no se especifica, empieza
# desde la carpeta actual
#   Ejemplo: $ bash tree.sh /home/user/
 
 
ricerca () {
for dir in `echo *`
# `echo *` enumera todos los archivos en el directorio de trabajo actual
# sin saltos de linea, algo similar a la instruccion: for dir in *
do
    if [ -d "$dir" ] ; then     # Si se trata de un directorio (-d)
        zz=0                    # Variable temporal para registrar el nivel
                                # del directorio.
        while [ $zz != $1 ]     # Bucle para mostrar las barras verticales interiores
        do
            echo -n "| "        # Muestra el simbolo del enlace vertical
            zz=`expr $zz + 1`
        done
 
        if [ -L "$dir" ] ; then         # Si el directorio es un link simbolico (-L)
            # Mostramos el simbolo del enlace seguido del nombre del directorio
            # eliminando la parte de la fecha y hora
            echo "+---$dir" `ls -l $dir | sed 's/^.*'$dir' //'`
        else
            echo "+---$dir"             # Muestra el simbolo del enlace
 
            numdir=`expr $numdir + 1`   # Incrementa el contador del directorio
            if cd "$dir" ; then         # Si se ha podido acceder al directorio...
                ricerca `expr $1 + 1`   # llamada recursiva
                cd ..                   # volvemos al directorio anterior
            fi
        fi
    fi
done
}
 
# Si recibimos algun valor, nos movemos al directorio indicado
if [ $# != 0 ] ; then
  cd $1
fi
 
echo "Directorio inicial = `pwd`"
numdir=0
 
ricerca 0
echo "Total directorios = $numdir"
 
exit 0



Comentarios sobre la versión: Versión 1 (0)


No hay comentarios
 

Comentar la versión: Versión 1

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad

http://lwp-l.com/s2180