¿Cómo puedo enumerar los archivos en otro directorio (no actual)?

10

Si ls enumera el contenido del directorio actual, ¿hay un comando similar que enumere el contenido de un directorio no actual, sin usar cd?

TifatulS
fuente

Respuestas:

12

Después de lssimplemente escribir la ruta del directorio que desea enumerar y lo obtendrá. Imagina que estás en tu directorio personal pero quieres hacer una lista /etc. Simplemente ejecute ls /etcy lo obtendrá en la lista.

Daniel Yuste Aroca
fuente
6

ls Hará esto.

La sintaxis para lses:

 ls flags file-or-directory-names

Para lo que estoy llamando file-or-directory-names, puede enumerar archivos en el directorio actual, para que solo se enumeren ciertos archivos. Por ejemplo, ls -l foo barenumerará información sobre just fooy bar(en forma larga, como le he dado a la -lbandera). ls baz*goenumerará todos los archivos cuyos nombres comienzan bazy terminan con go(si corresponde).

Pero cuando se le da un nombre de directorio a ls, se muestra el contenido de ese directorio en lugar del directorio actual.

Entonces, para enumerar el contenido de /var/log, simplemente ejecute:

ls /var/log

Si proporciona una ruta relativa para el directorio, es decir, una que no comience con un, /entonces buscará ese directorio dentro del directorio actual (tal como busca archivos). Pero seguirá enumerando el contenido del directorio, como desee.

Como nota al margen, a veces puede encontrar que no desea enumerar el contenido de un directorio, sino simplemente enumerar el directorio de la misma manera que se enumeraría un archivo. Para hacer esto, puedes pasar la -dbandera. Por ejemplo, esto se muestra /var/logen forma larga (no su contenido , sino /var/logsí mismo):

ls -ld /var/log
Eliah Kagan
fuente
Muy detallado. Sin embargo, recuerde que lsno es responsable de expandir baz*goa todos los archivos que comienzan con bazy terminan con go- es el shell que hace esto.
krlmlr
@krlmlr Derecha, ls baz*goes un ejemplo de lsrecibir (potencialmente) múltiples argumentos para file-or-directory-names(y de esta manera es similar a ls foo bar).
Eliah Kagan