如何列出其他(非当前)目录中的文件?


10

如果ls列出了当前目录的内容,是否有类似的命令可以列出非当前目录的内容而不使用cd?

Answers:


12

之后ls只需输入你想要的清单目录的路径,你会得到它。假设您位于主目录中但想列出/etc。只需运行ls /etc,您就会列出它。


6

ls 将做到这一点。

的语法为ls

 ls flags file-or-directory-names

对于我所说的file-or-directory-names,您可以列出当前目录中的文件,只列出某些文件。例如,ls -l foo bar将在just foobar(长格式,如我所给出的-l标志)中列出信息。ls baz*go将列出名称以开头baz和结尾go(如果有)的所有文件。

但是,当您将目录名称指定ls为时,它将列出该目录的内容而不是当前目录。

因此,要列出的内容/var/log,您只需运行:

ls /var/log

如果您提供目录的相对路径-即不是以-开头的/路径,则它将在当前目录内查找该目录(就像在查找文件一样)。但是,它仍会根据需要列出目录的内容

附带说明一下,有时您可能会发现不想列出目录的内容,而只列出与列出文件相同的目录。为此,您可以传递-d标志。例如,这/var/log以长格式显示(不是其内容,而是/var/log其本身):

ls -ld /var/log

非常详细。但是,请记住,这ls并不负责baz*go将所有文件扩展到开头baz和结尾,go而是由外壳程序执行的。
krlmlr 2013年

@krlmlr对,ls baz*gols(可能)接收(可能)多个参数的示例(file-or-directory-names因此类似于ls foo bar)。
伊利亚·卡根
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.