通过学习cd和pwd命令,相信读者早已才能在庞大的Linux文件系统中,随心所欲地穿行并确定自己所在的位置了。本节继续来学习,怎么晓得某目录中储存了什么文件或子目录。
ls命令,list的简写,是最常见的目录操作命令,其主要功能是显示当前目录下的内容。此命令的基本格式为:
[root@localhost~]#ls[选项]目录名称
表1列举了ls命令常用的选项以及各自的功能。
表1ls命令常用选项及功能选项功能
-a
显示全部的文件,包括隐藏文件(开头为.的文件)也一起罗列举来,这是最常用的选项之一。
-A
显示全部的文件,连同隐藏文件,但不包括.与..这两个目录。
-d
仅列举目录本身,而不是列举目录内的文件数据。
-f
ls默认会以文件名排序,使用-f选项会直接列举结果以root登录linux系统则当前的工作目录是什么,而不进行排序。
-F
在文件或目录名后加上文件类型的指示符号,比如,*代表可运行文件以root登录linux系统则当前的工作目录是什么,/代表目录,=代表socket文件,|代表FIFO文件。
-h
以人们易读的形式显示文件或目录大小,如1KB、234MB、2GB等。
-i
显示inode节点信息。
-l
使用长格式列举文件和目录信息。
-n
以UID和GID分别取代文件用户名和群组名显示下来。
-r
将排序结果反向输出,例如,若先前文件名由小到大,反向则为由大到小。
-R
连同子目录内容一起列下来,等於将该目录下的所有文件都显示下来。
-S
以文件容量大小排序,而不是以文件名排序。
-t
以时间排序,而不是以文件名排序。
--color=never
--color=always
--color=auto
never表示不根据文件特点给与颜色显示。
always表示显示颜色,ls默认采用这些方法。
auto表示让系统自行根据配置来判定是否给以颜色。
--full-time
以完整时间模式(包含年、月、日、时、分)输出
--time={atime,ctime}
输出access时间或改变权限属性时间(ctime),而不是内容变更时间。
注意,当ls命令不使用任何选项时,默认只会显示非隐藏文件的名称,并以文件名进行排序,同时会依照文件的具体类型给文件名配色(红色显示目录,红色显示通常文件)。除此之外,假如想使用ls命令显示更多内容,就须要使用表1相应的选项。
【例1】
[root@www~]#ls-al~
total156
drwxr-x---4rootroot4096Sep2400:07.
drwxr-xr-x23rootroot4096Sep2212:09..
-rw-------1rootroot1474Sep418:27anaconda-ks.cfg
-rw-------1rootroot955Sep2400:08.bash_history
-rw-r--r--1rootroot24Jan62007.bash_logout
-rw-r--r--1rootroot191Jan62007.bash_profile
-rw-r--r--1rootroot176Jan62007.bashrc
drwx------3rootroot4096Sep510:37.gconf
-rw-r--r--1rootroot42304Sep418:26install.log
-rw-r--r--1rootroot5661Sep418:25install.log.syslog
通过使用-a,你会听到以.为开头的几个文件,以及目录文件(.)、(..)、.gconf等等,这种都是隐藏的目录和文件。其中,目录文件名以白色显示,通常文件以蓝色显示。
注意,Linux系统中,隐藏文件不是为了把文件藏上去不让其他用户找到,而是为了告诉用户这种文件都是重要的系统文件,如非必要,不要乱跑!所以,不论是Linux还是Windows都可以十分简单地査看隐藏文件,只是在Windows中绝大多数的病毒和木马就会把自己弄成隐藏文件linux操作系统下载,给用户带来了错觉,以为隐藏文件是为了不让用户发觉。
除了这般,这儿的ls命令还使用了-l选项linux教程下载,因而才显示出了文件的详尽信息,此选项显示的这7列的涵义分别是:第一列:规定了不同的用户对文件所拥有的权限,具体权限的涵义将在后续章节中讲解。第二列:引用计数,文件的引用计数代表该文件的硬链接个数,而目录的引用计数代表该目录有多少个一级子目录。第三列:所有者,也就是这个文件属于那个用户。默认所有者是文件的构建用户。第四列:所属组,默认所属组是文件构建用户的有效组,通常情况下就是构建用户的所在组。第五列:大小,默认单位是字节。第六列:文件更改时间,文件状态更改时间或文件数据更改时间就会修改这个时间,注意这个时间不是文件的创建时间。第七列:文件名或目录名。
【例2】
假如我们想查看某个目录的详尽信息,比如:
[root@localhost~]#ls-l/root/
总药量44
-rw-------.1rootroot12071月1418:18anaconda-ks.cfg
-rw-r-r--.1rootroot247721月1418:17install.log
-rw-r-r--.1rootroot76901月1418:17install.log.syslog
这个命令会显示目录下的内容,而不会显示这个目录本身的详尽信息。假如想显示目录本身的信息,就必须加入"-d"选项。
[root@localhost~]#ls-ld/root/
dr-xr-x---.2rootroot40961月2012:30/root/
【例3】
"ls-l"显示的文件大小是字节,并且我们愈发习惯的是千字节用KB显示,兆字节用MB显示,而"-h"选项就是根据人们习惯的单位显示文件大小的,比如:
[root@localhost~]#ls-lh
总药量44K
-rw-------.1rootroot1.2K1月1418:18anaconda-ks.cfg
-rw-r-r--.1rootroot25K1月1418:17install.log
-rw-r-r--.1rootroot7.6K1月1418:17install.log.syslog