在Linux中,有非常多的命令我们可以用来执行各种任务。当我们想像使用文件浏览器一样列出一个目录的内容时,大家首先想到的就是ls命令。但是只有ls命令可以做到这一点吗?显然不是。下面,良旭将介绍一些在Linux下列出目录内容的命令,一起来看看吧。在lsLinux中列出目录内容的最常用命令是ls命令。默认情况下,ls显示目录的所有非隐藏内容。在显示结果中,文件和目录会以不同的颜色显示,具体显示的颜色取决于终端的颜色主题。lsls命令列出当前目录的内容。如果想查看其他目录的内容,可以在命令中指定具体路径:$ls/other/directory/path如果想查看目录的隐藏内容,可以加上-a选项:$ls-a也可以使用-l选项,以列表的形式列出当前目录的内容。此时列出的文件大小会以字节为单位显示,阅读起来很不方便。我们可以添加-h选项以人类可读的形式显示文件大小,例如k、M、G等人类可读的单位。当然,为了方便,你可以直接把两个选项合二为一,一起写。$ls-lhdirls命令大家都很熟悉,使用频率也很高。dir命令类似于ls命令,也是列出目录的内容。如果列出的文件名包含特殊字符,例如空格,它们将以反斜杠\开头。dir与ls类似,ls命令中的命令参数在dir中也有。dir其实dir命令相当于下面的命令:$ls-C-b其中:-C:以列的形式显示内容-b:在特殊字符前加一个反斜杠\vdirvdir命令以形式显示目录的长列表,反斜杠\也在特殊字符前添加。长列表显示文件或目录的权限信息、连接数、所有者、组所有者、文件大小、最后修改时间和名称。vdirvdir命令的作用与下面的ls命令相同:$ls-l-b其中:-l:以列表的形式显示目录的内容-b:在特殊字符\dir和vdir的含义看到这里,大家肯定会有疑问。既然ls命令可以实现dir和vdir的所有功能,那这两个存在的意义何在呢?Shell命令通常用作脚本的一部分,这些脚本的输出有时会显示在终端上,有时会重定向到一个文件中,或者有时会简单地通过管道传输到其他命令。但是,在某些情况下,由于脚本执行过程中的性能问题,ls命令会达不到预期。因此Linux开发者开发了这两个命令,使用这两个命令就不会遇到这样的性能问题。一些其他知识当我们使用ls命令查看目录的内容时,不同类型的文件会以不同的颜色显示,而使用dir和vdir命令时,所有内容都是相同的颜色。这是因为默认情况下ls实际上是ls--color=auto的别名,从而为输出着色。alias如果想在使用dir和vdir时根据不同类型的输出内容显示不同的颜色,可以使用:$dir--color$vdir--colordircolor某500强外企Linux开发工程师梁旭分享公众号大量Linux干货,欢迎关注!
