在Linux上列出和排序文件的11种方法

Linux命令可以提供关于文件的详细信息,并显示定制文件清单的选项,但是也可以深入到您所关心的文件系统中。

思想库

在Linux系统上,有许多方法可以列出文件并显示有关文件的信息。这篇文章回顾了一些命令,它们提供了文件的详细信息,并提供了自定义文件清单以满足需要的选项。

个人目录内的大多数命令列表文件而其他人达到尽可能深入一个文件系统看起来。

当然,列出文件的主要命令是:ls。但是,这个命令有大量的选项可以查找和列出您想要查看的文件。另外,总有找到帮助非常具体的文件搜索。

按名称列出文件

按名称列出文件的最简单方法是使用ls命令。毕竟,按名称(字母数字顺序)列出文件是默认的。您可以选择ls(不含详细信息)ls - l(很多细节)来确定你的观点。

$ ls | head -6 8pgs.pdf审美观s_thank_you .pdf疏远。pdf Annual_Meeting_Agenda-20190602.pdf大文件。bz2本获取$ ls - l |头6 -rw-rw-r——1啦啦10886 2019年3月22日8 pgs.pdf -rw-rw-r啦啦——284003 2019年5月11日Aesthetics_Thank_You.pdf -rw-rw-r啦啦——38282 2019年1月24日alien.pdf -rw-rw-r啦啦97358年5月19日——2019 Annual_Meeting_20190602.pdf -rw-rw-r——1啦啦18115234 4月16十七36 bigfile。bz2 drwxrwxr-x 4 shs shs 8052736 7月10日13:17 bin

的输出通过管道显示ls更多的如果您想一次一屏查看您的列表,可以使用命令。

以相反的名称顺序列出文件

要按名称反转文件列表,添加- r(反向)选项。这就像把正常的上市倒过来一样。

$ ls -r $ ls -lr

按文件扩展名列出文件

ls命令不按内容分析文件类型,但与文件名一起工作。但是,有一个命令选项可以按扩展名列出文件。如果你添加- x选项,ls将按名称在每个扩展类别内排序文件。例如,它将首先列出不带扩展名的文件(以字母数字顺序),然后列出扩展名为.1、.bz2、.c等的文件。

清单目录只

默认情况下,ls命令将同时显示文件和目录。如果你想上市只有目录,您可以使用- d选择。你会得到这样一个列表:

$ ls -d */ 1/备份/模块/项目/模板/ 2/ html/补丁/公共/视频/ bin/新/私有/保存/

按大小列出文件

如果要按大小顺序列出文件,请添加- s选择。但是请注意,这实际上不会显示大小(以及其他文件细节),除非您还添加- l(长清单)的选择。按大小列出文件时,通常有助于看到该命令正在执行您所要求的操作。注意,默认设置是先显示最大的文件。添加- r反转的选项(即,ls光敏电阻)。

$ ls -lS共计959492 -rw-rw-r- 1 shs shs 357679381 9月19日2019 sav-linux-free 9。tgz -rw-rw-r- 1 shs shs 103270400 4月16日17:38大文件-rw-rw-r- 1 shs shs 79117862 10月5日Nessus-8.7.1-ubuntu1110_amd64.deb

按所有者列出文件

如果您想按所有者(例如,在共享目录中)列出文件,您可以传递的输出ls命令排序并通过添加来选择owner列k3对第三个字段进行排序。

$ ls -l |排序-k3 |更多总计56 -rw-rw-r- 1海鲂任务列表drwx——2gdmgdm 4096年8月21日十七12 tracker-extract-files。121 srwxr-xr-x 11 . ntf_listenerc0c6b8b4567 drwxr-xr-x根4096 Aug 21 17:12 hsperfdata_root
^
|

实际上,您可以这样对任何字段排序(例如,year)。只要多加个n -就行了-k5n-如果你在一个字段排序是数字或你将排序在字母数字的顺序。这种排序技术对于排序文件内容也很有用,而不仅仅是列出文件。

按年龄列出文件

使用- t选项列出文件的顺序的年龄-如何新他们。添加- r选项来获得最近更新的文件显示在列表的最后一个。我使用这个别名来显示我的文件列表,我最近更新:

$别名最近='ls -ltr |尾部-8'

注意,文件更改和修改时间是不同的。的- c(变化)和- t(修改)选项不会总是给出相同的结果。如果你只改变了一个文件的权限,- c会把这些文件放在ls输出时- t不会。如果您对其中的差异感到好奇,请查看统计命令。

$ stat ckacct文件:ckacct大小:200块:8 IO块:4096常规文件设备:801h/2049d Inode: 829041链接:1访问:(0750/-rwxr-x——)Uid: (1000/ shs) Gid: (1000/ shs)访问:2020-08-20 16:10:11 063015008 -0400修改:2020-08-17 07:26 34.579922297 -0400< = =内容更改更改:2020-08-24 09:36:51.699775940 -0400<==内容或权限更改出生:-

按组列出文件

若要按相关组对文件进行排序,可以将长清单的输出传递给排序命令并告诉它对列4进行排序。

$ ls -l |排序-k4

按访问日期列出文件

要按访问日期(最近的先访问)列出文件,请使用-ltu选项。“u”执行“按访问日期”列表顺序。

$ ls -ltu total 959500 -rwxr-x- 1 shs shs 200 Aug 24 09:42 ckacct <==最近使用的-rw-rw-r- 1 shs shs 1335 Aug 23 17:45 lte

在一行中列出多个文件

有时,压缩的文件清单更适合手头的任务。的lscommand甚至有这样的选项。要在尽可能少的行中列出文件,可以使用——格式=逗号如下命令中使用逗号分隔文件名:

$ ls—格式=逗号1、10、11、12、124、13、14、15、16pgs-横屏。pdf, 16个后卫。pdf, 17, 18, 19, 192.168.0.4, 2, 20, 2018-12-23_OoS_2pdf, 2018 - 12 - 23 - _oos。pdf, 20190512 _oos。pdf, 2019年_hoho_application工作。pdf”……

喜欢空白?使用——格式=跨代替。

$ ls——format=across z* z zip zip zipfiles1.bat zipfiles2.bat zipfiles3.bat zipfiles4.bat zip .bat zoom_amd64.deb zoomap.pdf

增加搜索的深度

ls属性通常列出单个目录中的文件,您可以选择递归地列出文件- r选项,深入到目录的整个深度:

$ ls -R zzzzz | grep -v "^$" zzzzz: zzzzz/zzzz: zzzzz/zzzz/zzz: z zzzzz/zzzz/zzz:睡觉

或者,你也可以使用找到具有有限或无限深度规范的命令。在此命令中,我们指示找到命令只查看三个层次的目录:

$查找zzzzz -maxdepth 3 zzzzz/ zzzzz/ zzzzz/ zzzzz/zz

选择ls vs查找

当您需要列出满足一个非常选择性的需求列表的文件时,则找到command可能是一个更好的工具ls

不像ls,找到命令看起来越深入越好,除非你限制它。它也有许多其他的选择和一个-一旦找到要查找的文件,该命令允许您采取特定的操作。

总结

ls命令有许多列出文件的选项。检查出来。你可能会发现一些你会喜欢。

加入网络世界社区有个足球雷竞技app脸谱网LinkedIn对最重要的话题发表评论。
相关:

版权©2020Raybet2

工资调查:结果在