ls是最常见的目录操作命令,主要作用是显示目录下的内容,这个命令的基本信息如下:
命令名称:ls
英文原意:list
所在路径:/bin/ls
执行权限:所有用户
功能描述:显示目录下的内容
命令格式:
[root@localhost ~]#ls [选项][文件名或目录名]
选项:
-a:显示所有文件
--color=when:支持颜色输出,when的默认值是always(总显示颜色),也可以是never(从不显示颜色)和auto;
-d:显示目录信息,而不是目录下的文件
-h:人性化显示,按照我们习惯的单位显示文件大小
-i:显示文件的i节点号
-l:长格式显示
常见用法
A:“-a”选项
-a选项中的a是all的意思,也就是显示隐藏文件,例如
[root@localhost ~]# ls
anaconda-ks.cfg install.log
install.log.syslog
[root@localhost ~]# Is -a
.anacondaks
.cfg.bash_logout
.bashrcinstall.log
.mysql_history
.viminfo ...bash_history
.bash_profile
.cshrc install.log
.syslog
.tcshrc
当加入-a选项后,显示出来的文件明显增多,多出来的文件都有一个共同的特征,就是以“.”开头,在Linux中以“.”开头的文件都是隐藏文件,只有通过-a选项才能看到。
B:“-l”选项
[root@localhost
~]# ls -l
总用量44
-rw-------.1 root root 1207 1 月 14 18:18
anaconda-ks.cfg
-rw-r-r--.1 root root 24772 1 月 14 18:17
install.log
-rw-r-r--.1 root root 7690 1 月 14 18:17
install.log.syslog
#权限 引用计数 所有者 所属组 大小 文件修改时间 文件名
-l选项用于显示文件的详细信息,以上#后面表示显示信息的7列信息
第一列:权限,具体含义将在后续讲解
第二列:引用计数,代表该文件的硬连接个数,而目录的引用计数代表该目录的一级子目录数。
第三列:所有者,也就是这个文件属于哪个用户,默认的所有者是文件的建立用户
第四列:所属组,默认所属组是文件建立用户的有效组,一般情况下就是建立用户的所在组。
第五列:大小,默认单位是字节
第六列:文件修改时间,文件状态修改时间或文件数据修改时间都会更改这个时间,注意这个时间不是文件的创建时间。
第七列:文件名
C:“-d”选项
如果想查看某个目录的详细信息,例如
[root@localhost
~]# ls -l /root/
总用量44
-rw-------.1 root root 1207 1 月 14 18:18
anaconda-ks.cfg
-rw-r-r--.1 root root 24772 1 月 14 18:17
install.log
-rw-r-r--.1 root root 7690 1 月 14 18:17
install.log.syslog
这个命令会显示目录下的内容,而不会显示这个目录本身的详细信息,如果想显示目录本身的信息,就必须加入-d选项
[root@localhost
~]# ls -ld /root/
dr-xr-x---.2 root root 4096 1 月 20 12:30
/root/
D:“-h”选项
ls –l显示的文件大小是字节,但我们更加习惯的用千字节KB显示,兆字节用MB表示, 而-h就是按照人们习惯的单位来显示文件大小。
例如:
[root@localhost
~]# ls -lh
总用量44K
-rw-------.1 root root1.2K 1 月 14 18:18
anaconda-ks.cfg
-rw-r-r--.1 root root25K 1 月 14 18:17
install.log
-rw-r-r--.1 root root7.6K 1 月 14 18:17
install.log.syslog
E: “-i”选项
每个文件都有一个被称作inode(i节点)的隐藏属性,可以看成是系统搜索这个文件的 ID,而-i就是用来查看这个文件的inode号的,例如:
[root@localhost
~]# ls -i
262418 anaconda-ks.cfg 262147
install.log 262148 install.log.syslog
从理论上讲,每个文件的inode号都不一样,当然也有例外,如硬链接。