前言
ls命令是常需要用到的linux命令之一,熟悉其参数的搭配有利于操作上的便利,ls命令可以显示目录和文件的属性,一起来看下展开的属性有哪些。
一、ls命令介绍
ls命令来自于英文单词“list”,正如list单词的英文意思,是用于显示指定目录下的文件名称及属性。ls默认不加参数的情况下会显示列出当前工作目录中的文件信息,经常与cd和pwd命令搭配一起来使用,加上参数后,可以做更多的事情,作为最基础、最频繁的使用命令,有必要了解他的具体参数。
二、语法及参数
2.1 用help或man查看命令的语法
ls 【参数】文件
用法:ls [选项]... [文件]...
2.2 常用参数
-a | 显示目录下所有文件,包含“.”开头的隐藏文件; |
-r | 反选排序,和S搭配一起使用是由小到大; |
-h | 以人类可读的形式查看,更易于阅读的格式; |
-l | 以列表形式显示目录下的文件内容及属性; |
-S | 根据文件用大到小排序,即降序; |
-d | 只显示当前目录或指定目录的属性信息; |
-R | 递归显示子目录; |
-m | 水平列出文件,以逗号间隔; |
-X | 按文件扩展名排序; |
-i | 输出文件的inode信息 |
-t | 以最新时间(最后的修改时间)由上到下排序 |
-Z | 显示文件的SELinux安全上下文信息 |
--color | 输出信息中带有着色效果 |
2.3 文件属性介绍
用ll查看文件属性,逐一分析
编辑
各个文件类型表示的含义:
- -表示普通文件
- d表示目录文件
- l表示链接文件
- b表示块设备文件
- p表示管道文件
- c:字符设备文件
当然亦可通过颜色判断文件的类型
- 绿色 是可执行文件
- 黑色 是普通文件
- 蓝色 是目录文件
- 黑底黄字 是块设备文件
- 浅蓝色 是链接文件
- 红色 是安装包文件
三、参考案例
1)显示当前目录的文件;
[root@localhost ~]# ls
1.txt 3.txt data 模板 图片 下载 桌面
2.txt anaconda-ks.cfg 公共 视频 文档 音乐
2)显示所有文件,包含隐藏文件;
[root@localhost ~]# ls -a
. 3.txt .bash_profile .cshrc .ICEauthority 模板 下载
.. anaconda-ks.cfg .bashrc data .local 视频 音乐
1.txt .bash_history .cache .dbus .tcshrc 图片 桌面
2.txt .bash_logout .config .esd_auth 公共 文档
可以看到多了很多前面有.的文件;
当然自己也可以创建隐藏文件,顾名思义,创建隐藏文件就是不想让人发现。
[root@localhost ~]# touch .test
[root@localhost ~]# ls
1.txt 3.txt data 模板 图片 下载 桌面
2.txt anaconda-ks.cfg 公共 视频 文档 音乐
[root@localhost ~]#
[root@localhost ~]# ls -a
. anaconda-ks.cfg .cache .esd_auth .txt 文档
.. .bash_history .config .ICEauthority 公共 下载
1.txt .bash_logout .cshrc .local 模板 音乐
2.txt .bash_profile data .tcshrc 视频 桌面
3.txt .bashrc .dbus .test 图片
3)以列表形式显示文件信息,可以发现ls -l和ll的显示结果是一样的,这个是因为定义了ll=‘ls -l’的别名;
[root@localhost ~]# ls -l
总用量 4
-rw-r--r--. 1 root root 0 2月 11 07:59 1.txt
-rw-r--r--. 1 root root 0 2月 11 07:59 2.txt
[root@localhost ~]# alias -p | grep ls
alias l.='ls -d .* --color=auto'
alias ll='ls -l --color=auto'
alias ls='ls --color=auto'
[root@localhost ~]# ll
总用量 4
-rw-r--r--. 1 root root 0 2月 11 07:59 1.txt
-rw-r--r--. 1 root root 0 2月 11 07:59 2.txt
4)显示带有inode号的属性;
[root@localhost ~]# ll -i
总用量 4
67259245 -rw-r--r--. 1 root root 0 2月 11 07:59 1.txt
67259246 -rw-r--r--. 1 root root 0 2月 11 07:59 2.txt
67259247 -rw-r--r--. 1 root root 0 2月 11 07:59 3.txt
67144899 -rw-------. 1 root root 1365 2月 8 00:02 anaconda-ks.cfg
5)显示从大到小排序 ,也可从小到大排序,用-r参数逆向排序;
[root@localhost ~]# ll -Sh
总用量 4.0K
-rw-------. 1 root root 1.4K 2月 8 00:02 anaconda-ks.cfg
drwxr-xr-x. 2 root root 6 2月 11 07:52 data
drwxr-xr-x. 2 root root 6 2月 7 16:46 公共
[root@localhost ~]# ll -Shr
总用量 4.0K
-rw-r--r--. 1 root root 0 2月 11 07:59 3.txt
-rw-r--r--. 1 root root 0 2月 11 07:59 2.txt
-rw-r--r--. 1 root root 0 2月 11 07:59 1.txt
drwxr-xr-x. 2 root root 6 2月 7 16:46 桌面
drwxr-xr-x. 2 root root 6 2月 7 16:46 音乐
drwxr-xr-x. 2 root root 6 2月 7 16:46 下载
drwxr-xr-x. 2 root root 6 2月 7 16:46 文档
drwxr-xr-x. 2 root root 6 2月 7 16:46 图片
drwxr-xr-x. 2 root root 6 2月 7 16:46 视频
drwxr-xr-x. 2 root root 6 2月 7 16:46 模板
drwxr-xr-x. 2 root root 6 2月 7 16:46 公共
drwxr-xr-x. 2 root root 6 2月 11 07:52 data
-rw-------. 1 root root 1.4K 2月 8 00:02 anaconda-ks.cfg
6)可搭配通配符一起使用;
[root@localhost ~]# ls *.txt
1.txt 2.txt 3.txt
7)只显示当前目录的信息,也可指定目录;
[root@localhost ~]# ll -d
dr-xr-x---. 15 root root 4096 2月 11 08:46 .
[root@localhost ~]# ll -d /etc
drwxr-xr-x. 139 root root 8192 2月 10 20:29 /etc
[root@localhost ~]#
8)显示带有安全上下文的目录信息;
[root@localhost ~]# ls -lZd
dr-xr-x---. root root system_u:object_r:admin_home_t:s0 .
9)以文件扩展名进行排序;
[root@localhost ~]# ll -X
总用量 4
drwxr-xr-x. 2 root root 6 2月 11 07:52 data
drwxr-xr-x. 2 root root 6 2月 7 16:46 公共
drwxr-xr-x. 2 root root 6 2月 7 16:46 模板
drwxr-xr-x. 2 root root 6 2月 7 16:46 视频
drwxr-xr-x. 2 root root 6 2月 7 16:46 图片
drwxr-xr-x. 2 root root 6 2月 7 16:46 文档
drwxr-xr-x. 2 root root 6 2月 7 16:46 下载
drwxr-xr-x. 2 root root 6 2月 7 16:46 音乐
drwxr-xr-x. 2 root root 6 2月 7 16:46 桌面
-rw-------. 1 root root 1365 2月 8 00:02 anaconda-ks.cfg
-rw-r--r--. 1 root root 0 2月 11 07:59 1.txt
-rw-r--r--. 1 root root 0 2月 11 07:59 2.txt
-rw-r--r--. 1 root root 0 2月 11 07:59 3.txt
按照字母顺序,可以看到.cfg排在.txt前面。
10)文件最后修改时间由上到下进行排序;
[root@localhost ~]# ll -t
总用量 4
-rw-r--r--. 1 root root 0 2月 11 07:59 1.txt
-rw-r--r--. 1 root root 0 2月 11 07:59 2.txt
-rw-r--r--. 1 root root 0 2月 11 07:59 3.txt
drwxr-xr-x. 2 root root 6 2月 11 07:52 data
-rw-------. 1 root root 1365 2月 8 00:02 anaconda-ks.cfg
drwxr-xr-x. 2 root root 6 2月 7 16:46 公共
drwxr-xr-x. 2 root root 6 2月 7 16:46 模板
drwxr-xr-x. 2 root root 6 2月 7 16:46 视频
drwxr-xr-x. 2 root root 6 2月 7 16:46 图片
drwxr-xr-x. 2 root root 6 2月 7 16:46 文档
drwxr-xr-x. 2 root root 6 2月 7 16:46 下载
drwxr-xr-x. 2 root root 6 2月 7 16:46 音乐
drwxr-xr-x. 2 root root 6 2月 7 16:46 桌面
总结
ls命令是常用到的命令,对参数方面一定要尽可能的了解,基础的内容是最容易被忽视;有句话叫越简单的事情越难做,不管是多简单的内容,也要认真学习。