4 votos

Listar todas las carpetas y subcarpetas con bash

Traté de usar PHP para leer mi carpeta y subcarpeta para crear un menú básico para que yo lo use, pero me di cuenta cuando hice eso me tomó algo de tiempo porque tiene que ejecutar cada vez que voy a la página.

Entonces me quedé pensando, ¿por qué no usar bash y hacer es crear un archivo de texto que PHP puede leer y hacer que se ejecute cada noche con crontab? Así que he buscado y probado, pero no era tan fácil.

Con este código se puede obtener UNA subcarpeta

for D in /var/www/html/lib/*; do
    if [ -d "${D}" ]; then
        echo "${D}"
    fi
done

me dio

/var/www/html/lib/folder1
/var/www/html/lib/folder2
/var/www/html/lib/folder3
...

Pero las carpetas tienen todas las subcarpetas como

/var/html/lib/folder1/1990
...

Mi idea era hacer un bucle y, a continuación, utilizar

myfolder= "${D}"
addresstoremove="var/www/html/"

printf '%s\n' "${myfolder//$addresstoremove/}" >> textfile.txt

por lo que eliminar la dirección no necesito en mi código PHP

5voto

Vijay Puntos 609
 find /var/www/html/lib/ -type d
 

o

 find /var/www/html/lib/ -type d >> file.txt
 

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: