it-swarm-es.com

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

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

9
TifatulS

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

11
Daniel Yuste Aroca

ls hará esto.

La sintaxis de ls es:

_ ls flagsfile-or-directory-names_

Para lo que estoy llamando file-or-directory-names, puede enumerar archivos en el directorio actual, para tener solo ciertos archivos en la lista. Por ejemplo, _ls -l foo bar_ enumerará información sobre solo foo y bar (en forma larga, ya que le he dado la bandera _-l_). _ls baz*go_ enumerará todos los archivos cuyos nombres comiencen con baz y terminen con go (si corresponde).

Pero cuando le da un nombre de directorio a ls, enumera 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 será busque ese directorio dentro del directorio actual (tal como busca archivos). Pero seguirá enumerando los contenidos del directorio, como desee.

Como nota al margen, a veces puede encontrar que no desea enumerar los contenidos de un directorio, sino simplemente enumerar el directorio de la misma manera que un archivo Estaría en la lista. Para hacer esto, puede pasar la bandera _-d_. Por ejemplo, esto muestra _/var/log_ en forma larga (no su contenido , sino _/var/log_):

_ls -ld /var/log
_
4
Eliah Kagan