Hoy haciendo un Shell Script me ha surgido la necesidad de hacer un listado de los directorios (y no ficheros) que hay en una determinada ruta.
Al parecer el comando ls no dispone de esta utilidad… cosa que me parece un poco extraña, pero he encontrado un modo de hacerlo con find.
$ find . -maxdepth 1 -type d
Incluso, para más comodidad te puedes hacer un alias:
$ alias lsdirs='find . -maxdepth 1 -type d'



probaste esto?
ls -F | grep /
-F agrega al final ‘*’ a los ejecutables y ‘/’ a los directorios
grep te entrega solo aquellos terminados en /
y asi lista solo directorios (con un / al final)
Acabo de crear 2 alias, listar sólo archivos y listar sólo directorios:
alias d “ls -lrt | awk ‘/^[d]/’”
alias a “ls -lrt | awk ‘/^[-]/’”
Efectivamente, estos alias también funcionan correctamente.
Gracias!!
Saludos.
Muy parecido al comando de “minombresbond” yo utilizo
ls -p | grep /
Donde “-p” -> –file-type añade el indicador / a los directorios
Pues es bobada… pero pues el “-p” es solo para eso!
Saludo
Pues sí, otra forma más de hacerlo.
Gracias!
Saludos.