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 01 de Junio del 2012 por Administrador
10.003 visualizaciones desde el 01 de Junio del 2012. Una media de 49 por semana
Script para mostrar en forma de árbol los directorios contenidos en un directorio dado utilizando una función recursiva

Versión 1

Publicado el 01 de Junio del 2012gráfica de visualizaciones de la versión: Versión 1
10.007 visualizaciones desde el 01 de Junio del 2012. Una media de 49 por semana
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

http://lwp-l.com/s2180