这篇文章将为大家详细讲解有关Linux中ls命令主要用来做什么,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

Linux常用命令ls命令 用来显示目标列表,在Linux中是使用率较高命令。ls命令的输出信息可以进行彩色加亮显示,以分区不同类型的文件。

ls

显示目录内容列表

补充说明语法

ls[选项][文件名...][-1abcdfgiklmnopqrstuxABCDFGLNQRSUX][-wcols][-Tcols][-Ipattern][--full-time][--format={long,verbose,commas,across,vertical,single-col‐umn}][--sort={none,time,size,extension}][--time={atime,access,use,ctime,status}][--color[={none,auto,always}]][--help][--version][--]选项

-C#多列输出,纵向排序。-F#每个目录名加"/"后缀,每个FIFO名加"|"后缀,每个可运行名加“*”后缀。-R#递归列出遇到的子目录。-a#列出所有文件,包括以"."开头的隐含文件。-c#使用“状态改变时间”代替“文件修改时间”为依据来排序(使用“-t”选项时)或列出(使用“-l”选项时)。-d#将目录名像其它文件一样列出,而不是列出它们的内容。-i#输出文件前先输出文件系列号(即i节点号:i-nodenumber)。-l列出(以单列格式)文件模式#(filemode),文件的链接数,所有者名,组名,文件大小(以字节为单位),时间信息,及文件名。#缺省时,时间信息显示最近修改时间;可以以选项“-c”和“-u”选择显示其它两种时间信息。对于设备文件,#原先显示文件大小的区域通常显示的是主要和次要的信号(majorandminordevicenumbers)。-q#将文件名中的非打印字符输出为问号。(对于到终端的输出这是缺省的。)-r#逆序排列。-t#按时间信息排序。-u#使用最近访问时间代替最近修改时间为依据来排序(使用“-t”选项时)或列出(使用“-l”选项时)。-1#单列输出。-1,--format=single-column#一行输出一个文件(单列输出)。如标准输出不是到终端,此选项就是缺省选项。-a,--all#列出目录中所有文件,包括以“.”开头的文件。-b,--escape#把文件名中不可输出的字符用反斜杠加字符编号(就像在C语言里一样)的形式列出。-c,--time=ctime,--time=status#按文件状态改变时间(i节点中的ctime)排序并输出目录内#容。如采用长格式输出(选项“-l”),使用文件的状态改#变时间取代文件修改时间。【译注:所谓文件状态改变(i节#点中以ctime标志),既包括文件被修改,又包括文件属性(如所有者、组、链接数等等)的变化】-d,--directory#将目录名像其它文件一样列出,而不是列出它们的内容。-f#不排序目录内容;按它们在磁盘上存储的顺序列出。同时启动“-a”选项,如果在“-f”之前存在“-l”、#“--color”或“-s”,则禁止它们。-g#忽略,为兼容UNIX用。-i,--inode#在每个文件左边打印i节点号(也叫文件序列号和索引号:fileserialnumberandindexnum‐#ber)。i节点号在每个特定的文件系统中是唯一的。-k,--kilobytes#如列出文件大小,则以千字节KB为单位。-l,--format=long,--format=verbose#除每个文件名外,增加显示文件类型、权限、硬链接数、所有者名、组名、大小(byte#)、及时间信息(如未指明是其它时间即指修改时间)。对于6个月以上的文件或超出未来1#小时的文件,时间信息中的时分将被年代取代。#每个目录列出前,有一行“总块数”显示目录下全部文件所占的磁盘空间。块默认是1024#字节;如果设置了POSIXLY_CORRECT的环境变量,除非用“-k”选项,则默认块大小是512字#节。每一个硬链接都计入总块数(因此可能重复计数),这无疑是个缺点。#列出的权限类似于以符号表示(文件)模式的规范。但是ls#在每套权限的第三个字符中结合了多位(multiplebits)的信息,如下:s如果设置了setuid#位或setgid位,而且也设置了相应的可执行位。S如果设置了setuid位或setgid#位,但是没有设置相应的可执行位。t如果设置了sticky位,而且也设置了相应的可执行位。T#如果设置了sticky位,但是没有设置相应的可执行位。x#如果仅仅设置了可执行位而非以上四种情况。-其它情况(即可执行位未设置)。-m,--format=commas#水平列出文件,每行尽可能多,相互用逗号和一个空格分隔。-n,--numeric-uid-gid#列出数字化的UID和GID而不是用户名和组名。-o#以长格式列出目录内容,但是不显示组信息。等于使用“--format=long--no-group#”选项。提供此选项是为了与其它版本的ls兼容。-p#在每个文件名后附上一个字符以说明该文件的类型。类似“-F”选项但是不标示可执行文件。-q,--hide-control-chars#用问号代替文件名中非打印的字符。这是缺省选项。-r,--reverse#逆序排列目录内容。-s,--size#在每个文件名左侧输出该文件的大小,以1024字节的块为单位。如果设置了POSIXLY_CORRECT#的环境变量,除非用“-k”选项,块大小是512字节。-t,--sort=time#按文件最近修改时间(i节点中的mtime)而不是按文件名字典序排序,新文件靠前。-u,--time=atime,--time=access,--time=use#类似选项“-t”,但是用文件最近访问时间(i节点中的atime)取代文件修#改时间。如果使用长格式列出,打印的时间是最近访问时间。-w,--widthcols#假定屏幕宽度是cols(cols以实际数字取代)列。如未用此选项,缺省值是这#样获得的:如可能先尝试取自终端驱动,否则尝试取自环境变量COLUMNS(如果设#置了的话),都不行则取80。-x,--format=across,--format=horizontal#多列输出,横向排序。-A,--almost-all#显示除"."和".."外的所有文件。-B,--ignore-backups#不输出以“~”结尾的备份文件,除非已经在命令行中给出。-C,--format=vertical#多列输出,纵向排序。当标准输出是终端时这是缺省项。使用命令名dir和d时,则总是缺省的。-D,--dired#当采用长格式(“-l”选项)输出时,在主要输出后,额外打印一行://DIRED//BEG1END1BEG2#END2...#BEGn和ENDn是无符号整数,记录每个文件名的起始、结束位置在输出中的位置(#字节偏移量)。这使得Emacs易于找到文件名,即使文件名包含空格或换行等非正#常字符也无需特异的搜索。##如果目录是递归列出的(“-R”选项),每个子目录后列出类似一行:#//SUBDIRED//BEG1END1...【译注:我测试了TurboLinux4.0和RedHat6.1,发现它们都是在“#//DIRED//BEG1...”之后列出“//SUBDIRED//BEG1...”,也即只有一个#而不是在每个子目录后都有。而且“//SUBDIRED//BEG1...”列出的是各个子目录名的偏移。】-F,--classify,--file-type#在每个文件名后附上一个字符以说明该文件的类型。“*”表示普通的可执行文件;“/”表示目录;“#@”表示符号链接;“|”表示FIFOs;“=”表示套接字(sockets);什么也没有则表示普通文件。-G,--no-group#以长格式列目录时不显示组信息。-I,--ignorepattern#除非在命令行中给定,不要列出匹配shell文件名匹配式(pattern,不是指一般#表达式)的文件。在shell中,文件名以"."起始的不与在文件名匹配式(pattern)#开头的通配符匹配。-L,--dereference#列出符号链接指向的文件的信息,而不是符号链接本身。-N,--literal#不要用引号引起文件名。-Q,--quote-name#用双引号引起文件名,非打印字符以C语言的方法表示。-R,--recursive#递归列出全部目录的内容。-S,--sort=size#按文件大小而不是字典序排序目录内容,大文件靠前。-T,--tabsizecols#假定每个制表符宽度是cols。缺省为8。为求效率,ls可能在输出中使用制表符。若cols为0,则不使用制表符。-U,--sort=none#不排序目录内容;按它们在磁盘上存储的顺序列出。(选项“-U”和“-f”的不#同是前者不启动或禁止相关的选项。)这在列很大的目录时特别有用,因为不加排序#能显著地加快速度。-X,--sort=extension#按文件扩展名(由最后的"."之后的字符组成)的字典序排序。没有扩展名的先列出。--color[=when]#指定是否使用颜色区别文件类别。环境变量LS_COLORS指定使用的颜色。如何设置这个变量见dir‐#colors(1)。when可以被省略,或是以下几项之一:none#不使用颜色,这是缺省项。#auto仅当标准输出是终端时使用。always总是使用颜色。指定--color而且省略when时就等同于#--color=always。--full-time#列出完整的时间,而不是使用标准的缩写。格式如同date(1)的缺省格式;此格式#是不能改变的,但是你可以用cut(1)取出其中的日期字串并将结果送至命令“date-d”。#输出的时间包括秒是非常有用的。(Unix文件系统储存文件的时间信息精确到秒,#因此这个选项已经给出了系统所知的全部信息。)例如,当你有一个Makefile文件#不能恰当地生成文件时,这个选项会提供帮助。参数

目录:指定要显示列表的目录,也可以是具体的文件。

实例

$ls#仅列出当前目录可见文件$ls-l#列出当前目录可见文件详细信息$ls-hl#列出详细信息并以可读大小显示文件大小$ls-al#列出所有文件(包括隐藏)的详细信息$ls--human-readable--size-1-S--classify#按文件大小排序$du-sh*|sort-h#按文件大小排序(同上)

显示当前目录下包括影藏文件在内的所有文件列表

[root@localhost~]#ls-a.anaconda-ks.cfg.bash_logout.bashrcinstall.log.mysql_historysatools.tcshrc.vimrc...bash_history.bash_profile.cshrcinstall.log.syslog.rnd.ssh.viminfo

输出长格式列表

[root@localhost~]#ls-1anaconda-ks.cfginstall.loginstall.log.syslogsatools

显示文件的inode信息

索引节点(index inode简称为“inode”)是Linux中一个特殊的概念,具有相同的索引节点号的两个文本本质上是同一个文件(除文件名不同外)。

[root@localhost~]#ls-i-lanaconda-ks.cfginstall.log2345481-rw-------1rootroot859Jun1122:49anaconda-ks.cfg2345474-rw-r--r--1rootroot13837Jun1122:49install.log

水平输出文件列表

[root@localhost/]#ls-mbin,boot,data,dev,etc,home,lib,lost+found,media,misc,mnt,opt,proc,root,sbin,selinux,srv,sys,tmp,usr,var

修改最后一次编辑的文件

最近修改的文件显示在最上面。

[root@localhost/]#ls-ttmprootetcdevlibbootsysprocdatahomebinsbinusrvarlost+foundmediamntoptselinuxsrvmisc

显示递归文件

[root@localhost~]#ls-R.:anaconda-ks.cfginstall.loginstall.log.syslogsatools./satools:black.txtfreemem.shiptables.shlnmp.shmysqlphp502_check.shssh_safe.sh

打印文件的UID和GID

[root@localhost/]#ls-ntotal254drwxr-xr-x2004096Jun1204:03bindrwxr-xr-x4001024Jun1514:45bootdrwxr-xr-x6004096Jun1210:26datadrwxr-xr-x10003520Sep2615:38devdrwxr-xr-x75004096Oct1604:02etcdrwxr-xr-x4004096Jun1210:26homedrwxr-xr-x140012288Jun1604:02libdrwx------20016384Jun1122:46lost+founddrwxr-xr-x2004096May112011mediadrwxr-xr-x2004096Nov82010miscdrwxr-xr-x2004096May112011mntdrwxr-xr-x2004096May112011optdr-xr-xr-x232000Jun1511:04procdrwxr-x---4004096Oct1514:43rootdrwxr-xr-x20012288Jun1204:03sbindrwxr-xr-x2004096May112011selinuxdrwxr-xr-x2004096May112011srvdrwxr-xr-x11000Jun1511:04sysdrwxrwxrwt30098304Oct1608:45tmpdrwxr-xr-x13004096Jun1123:38usrdrwxr-xr-x19004096Jun1123:38var

列出文件和文件夹的详细信息

[root@localhost/]#ls-ltotal254drwxr-xr-x2rootroot4096Jun1204:03bindrwxr-xr-x4rootroot1024Jun1514:45bootdrwxr-xr-x6rootroot4096Jun1210:26datadrwxr-xr-x10rootroot3520Sep2615:38devdrwxr-xr-x75rootroot4096Oct1604:02etcdrwxr-xr-x4rootroot4096Jun1210:26homedrwxr-xr-x14rootroot12288Jun1604:02libdrwx------2rootroot16384Jun1122:46lost+founddrwxr-xr-x2rootroot4096May112011mediadrwxr-xr-x2rootroot4096Nov82010miscdrwxr-xr-x2rootroot4096May112011mntdrwxr-xr-x2rootroot4096May112011optdr-xr-xr-x232rootroot0Jun1511:04procdrwxr-x---4rootroot4096Oct1514:43rootdrwxr-xr-x2rootroot12288Jun1204:03sbindrwxr-xr-x2rootroot4096May112011selinuxdrwxr-xr-x2rootroot4096May112011srvdrwxr-xr-x11rootroot0Jun1511:04sysdrwxrwxrwt3rootroot98304Oct1608:48tmpdrwxr-xr-x13rootroot4096Jun1123:38usrdrwxr-xr-x19rootroot4096Jun1123:38var

列出可读文件和文件夹详细信息

[root@localhost/]#ls-lhtotal254Kdrwxr-xr-x2rootroot4.0KJun1204:03bindrwxr-xr-x4rootroot1.0KJun1514:45bootdrwxr-xr-x6rootroot4.0KJun1210:26datadrwxr-xr-x10rootroot3.5KSep2615:38devdrwxr-xr-x75rootroot4.0KOct1604:02etcdrwxr-xr-x4rootroot4.0KJun1210:26homedrwxr-xr-x14rootroot12KJun1604:02libdrwx------2rootroot16KJun1122:46lost+founddrwxr-xr-x2rootroot4.0KMay112011mediadrwxr-xr-x2rootroot4.0KNov82010miscdrwxr-xr-x2rootroot4.0KMay112011mntdrwxr-xr-x2rootroot4.0KMay112011optdr-xr-xr-x235rootroot0Jun1511:04procdrwxr-x---4rootroot4.0KOct1514:43rootdrwxr-xr-x2rootroot12KJun1204:03sbindrwxr-xr-x2rootroot4.0KMay112011selinuxdrwxr-xr-x2rootroot4.0KMay112011srvdrwxr-xr-x11rootroot0Jun1511:04sysdrwxrwxrwt3rootroot96KOct1608:49tmpdrwxr-xr-x13rootroot4.0KJun1123:38usrdrwxr-xr-x19rootroot4.0KJun1123:38var

显示文件夹信息

[root@localhost/]#ls-ld/etc/drwxr-xr-x75rootroot4096Oct1604:02/etc/

按时间列出文件和文件夹详细信息

[root@localhost/]#ls-lttotal254drwxrwxrwt3rootroot98304Oct1608:53tmpdrwxr-xr-x75rootroot4096Oct1604:02etcdrwxr-x---4rootroot4096Oct1514:43rootdrwxr-xr-x10rootroot3520Sep2615:38devdrwxr-xr-x14rootroot12288Jun1604:02libdrwxr-xr-x4rootroot1024Jun1514:45bootdrwxr-xr-x11rootroot0Jun1511:04sysdr-xr-xr-x232rootroot0Jun1511:04procdrwxr-xr-x6rootroot4096Jun1210:26datadrwxr-xr-x4rootroot4096Jun1210:26homedrwxr-xr-x2rootroot4096Jun1204:03bindrwxr-xr-x2rootroot12288Jun1204:03sbindrwxr-xr-x13rootroot4096Jun1123:38usrdrwxr-xr-x19rootroot4096Jun1123:38vardrwx------2rootroot16384Jun1122:46lost+founddrwxr-xr-x2rootroot4096May112011mediadrwxr-xr-x2rootroot4096May112011mntdrwxr-xr-x2rootroot4096May112011optdrwxr-xr-x2rootroot4096May112011selinuxdrwxr-xr-x2rootroot4096May112011srvdrwxr-xr-x2rootroot4096Nov82010misc

按修改时间列出文件和文件夹详细信息

[root@localhost/]#ls-ltrtotal254drwxr-xr-x2rootroot4096Nov82010miscdrwxr-xr-x2rootroot4096May112011srvdrwxr-xr-x2rootroot4096May112011selinuxdrwxr-xr-x2rootroot4096May112011optdrwxr-xr-x2rootroot4096May112011mntdrwxr-xr-x2rootroot4096May112011mediadrwx------2rootroot16384Jun1122:46lost+founddrwxr-xr-x19rootroot4096Jun1123:38vardrwxr-xr-x13rootroot4096Jun1123:38usrdrwxr-xr-x2rootroot12288Jun1204:03sbindrwxr-xr-x2rootroot4096Jun1204:03bindrwxr-xr-x4rootroot4096Jun1210:26homedrwxr-xr-x6rootroot4096Jun1210:26datadr-xr-xr-x232rootroot0Jun1511:04procdrwxr-xr-x11rootroot0Jun1511:04sysdrwxr-xr-x4rootroot1024Jun1514:45bootdrwxr-xr-x14rootroot12288Jun1604:02libdrwxr-xr-x10rootroot3520Sep2615:38devdrwxr-x---4rootroot4096Oct1514:43rootdrwxr-xr-x75rootroot4096Oct1604:02etcdrwxrwxrwt3rootroot98304Oct1608:54tmp

按照特殊字符对文件进行分类

[root@localhostnginx-1.2.1]#ls-Fauto/CHANGESCHANGES.ruconf/configure*contrib/html/LICENSEMakefileman/objs/READMEsrc/

列出文件并标记颜色分类

[root@localhostnginx-1.2.1]#ls--color=autoautoCHANGESCHANGES.ruconfconfigurecontribhtmlLICENSEMakefilemanobjsREADMEsrc

关于“Linux中ls命令主要用来做什么”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。