ls 命令
Linux 命令:ls
功能说明:列出指定目录下的内容及其内容属性信息
语法格式:
ls [OPTION]... [FILE]... ls [选项] [文件或目录]
命令后面的选项和目录可以省略,表示查看当前路径的文件信息
参数:
-l | 使用长格式列出文件或目录信息 |
-a | 显示目录下所有文件,包括以 “.” 开头的隐藏文件 |
-t | 根据最后的修改时间排序(mtime),默认是以文件名排序 |
-r | 依据相反次序排序 |
-F | 在条目后加上文件类型的指示符号(*、/、=、@、|) |
-p | 只在目录后面加上“/” |
-i | 显示inode节点信息 |
-d | 当遇到目录时,列出目录本身而非目录内的文件 |
-h | 以人类可读的信息显示文件或目录大小 |
-A | 列出所有文件,不包括 “.” 和 “..” |
-S | 根据文件大小排序 |
-R | 递归列出所有子目录 |
-x | 逐行列出,默认逐栏列出 |
-X | 根据扩展名排序 |
-c | 根据状态改变时间排序(ctime) |
-u | 根据最后访问时间排序(atime) |
--color={never,always,auto} | 不同的文件类型显示不同的颜色,never表示不显示,always表示总显示,auto表示自动显示 |
--full-time | 以完整的时间格式显示 |
--time-style={full-iso,long-iso,iso,locale} | 以不同的时间格式显示,推荐使用 “long-iso” |
--time={atime,ctime} | 以不同的时间属性显示,atime表示访问时间,ctime表示改变权限属性时间,默认为mtime,最后修改时间 |
案例示范
[root@yunxuan server]# pwd /server [root@yunxuan server]# ls #<==== 显示当前目录下文件信息 001_link.txt 001.txt scripts tools [root@yunxuan server]# ls -l #<==== 长格式显示 total 0 lrwxrwxrwx. 1 root root 7 Nov 3 22:01 001_link.txt -> 001.txt -rw-r--r--. 1 root root 0 Nov 3 21:59 001.txt drwxr-xr-x. 2 root root 113 Oct 26 12:18 scripts drwxr-xr-x. 2 root root 6 Oct 17 08:07 tools [root@yunxuan server]# ls -al #<==== 以长格式方式显示当前目录下所有文件 total 0 drwxr-xr-x. 4 root root 69 Nov 3 22:01 . dr-xr-xr-x. 19 root root 252 Oct 17 20:31 .. lrwxrwxrwx. 1 root root 7 Nov 3 22:01 001_link.txt -> 001.txt -rw-r--r--. 1 root root 0 Nov 3 21:59 001.txt drwxr-xr-x. 2 root root 113 Oct 26 12:18 scripts drwxr-xr-x. 2 root root 6 Oct 17 08:07 tools [root@yunxuan server]# ls -lt #<==== 以最后修改时间mtime方式排序显示 total 0 lrwxrwxrwx. 1 root root 7 Nov 3 22:01 001_link.txt -> 001.txt -rw-r--r--. 1 root root 0 Nov 3 21:59 001.txt drwxr-xr-x. 2 root root 113 Oct 26 12:18 scripts drwxr-xr-x. 2 root root 6 Oct 17 08:07 tools [root@yunxuan server]# ls -ltr #<==== 以最后修改时间的相反次序排序显示,最后一个为最近修改的文件 total 0 drwxr-xr-x. 2 root root 6 Oct 17 08:07 tools drwxr-xr-x. 2 root root 113 Oct 26 12:18 scripts -rw-r--r--. 1 root root 0 Nov 3 21:59 001.txt lrwxrwxrwx. 1 root root 7 Nov 3 22:01 001_link.txt -> 001.txt [root@yunxuan server]# ls -F #<==== 在文件末尾显示文件类型的指示符号 001_link.txt@ 001.txt scripts/ tools/ [root@yunxuan server]# ls -lp #<==== 在目录文件后显示”/“ total 0 lrwxrwxrwx. 1 root root 7 Nov 3 22:01 001_link.txt -> 001.txt -rw-r--r--. 1 root root 0 Nov 3 21:59 001.txt drwxr-xr-x. 2 root root 113 Oct 26 12:18 scripts/ drwxr-xr-x. 2 root root 6 Oct 17 08:07 tools/ [root@yunxuan server]# ls -li #<==== 显示文件inode节点信息 total 0 67170829 lrwxrwxrwx. 1 root root 7 Nov 3 22:01 001_link.txt -> 001.txt 67165667 -rw-r--r--. 1 root root 0 Nov 3 21:59 001.txt 101676508 drwxr-xr-x. 2 root root 113 Oct 26 12:18 scripts 871292 drwxr-xr-x. 2 root root 6 Oct 17 08:07 tools [root@yunxuan server]# ls -dl tools/ #<==== 显示目录本身的属性信息,而不列出该目录的文件信息 drwxr-xr-x. 2 root root 6 Oct 17 08:07 tools/
[root@yunxuan server]# ls -hl /etc #<==== 以可读的方式显示目录的大小 total 1.1M drwxr-xr-x. 3 root root 101 Oct 17 03:06 abrt -rw-r--r--. 1 root root 16 Oct 17 03:11 adjtime -rw-r--r--. 1 root root 1.5K Jun 7 2013 aliases -rw-r--r--. 1 root root 12K Oct 17 03:16 aliases.db [root@yunxuan server]# ls -lA #<==== 显示不包含 "." 和 ".." 目录的所有文件 total 0 lrwxrwxrwx. 1 root root 7 Nov 3 22:01 001_link.txt -> 001.txt -rw-r--r--. 1 root root 0 Nov 3 21:59 001.txt drwxr-xr-x. 2 root root 113 Oct 26 12:18 scripts drwxr-xr-x. 2 root root 6 Oct 17 08:07 tools [root@yunxuan server]# ls -lS #<==== 按照文件的大小排序显示 total 0 drwxr-xr-x. 2 root root 113 Oct 26 12:18 scripts lrwxrwxrwx. 1 root root 7 Nov 3 22:01 001_link.txt -> 001.txt drwxr-xr-x. 2 root root 6 Oct 17 08:07 tools -rw-r--r--. 1 root root 0 Nov 3 21:59 001.txt [root@yunxuan server]# ls -lR #<==== 递归列出所有子目录 .: total 0 lrwxrwxrwx. 1 root root 7 Nov 3 22:01 001_link.txt -> 001.txt -rw-r--r--. 1 root root 0 Nov 3 21:59 001.txt drwxr-xr-x. 2 root root 113 Oct 26 12:18 scripts drwxr-xr-x. 2 root root 6 Oct 17 08:07 tools ./scripts: total 24 -rw-r--r--. 1 root root 317 Oct 17 20:31 deploy_rsync.log -rw-r--r--. 1 root root 1868 Oct 17 20:49 deploy_rsync_service.sh -rw-r--r--. 1 root root 6576 Oct 17 08:07 init.log -rw-r--r--. 1 root root 1982 Oct 16 23:24 init.sh -rw-r--r--. 1 root root 992 Oct 26 12:18 update_ntp.sh ./tools: total 0
[root@yunxuan server]# ll -X #<==== 根据扩展名进行排序 total 0 drwxr-xr-x. 2 root root 113 Oct 26 12:18 scripts drwxr-xr-x. 2 root root 6 Oct 17 08:07 tools -rw-r--r--. 1 root root 0 Nov 3 23:40 xyz.tar.gz -rw-r--r--. 1 root root 0 Nov 3 23:40 001.jpg -rw-r--r--. 1 root root 0 Nov 3 23:41 002.png -rw-r--r--. 1 root root 0 Nov 3 23:41 003.png -rw-r--r--. 1 root root 0 Nov 3 23:41 004.png lrwxrwxrwx. 1 root root 7 Nov 3 22:01 001_link.txt -> 001.txt -rw-r--r--. 1 root root 0 Nov 3 21:59 001.txt [root@yunxuan server]# ll #<==== 默认排序 total 0 -rw-r--r--. 1 root root 0 Nov 3 23:40 001.jpg lrwxrwxrwx. 1 root root 7 Nov 3 22:01 001_link.txt -> 001.txt -rw-r--r--. 1 root root 0 Nov 3 21:59 001.txt -rw-r--r--. 1 root root 0 Nov 3 23:41 002.png -rw-r--r--. 1 root root 0 Nov 3 23:41 003.png -rw-r--r--. 1 root root 0 Nov 3 23:41 004.png drwxr-xr-x. 2 root root 113 Oct 26 12:18 scripts drwxr-xr-x. 2 root root 6 Oct 17 08:07 tools -rw-r--r--. 1 root root 0 Nov 3 23:40 xyz.tar.gz
[root@yunxuan server]# ls -x /boot #<==== 逐行显示 config-3.10.0-1062.el7.x86_64 efi grub grub2 initramfs-0-rescue-49cc64831880418d97e702177a261014.img initramfs-3.10.0-1062.el7.x86_64.img symvers-3.10.0-1062.el7.x86_64.gz System.map-3.10.0-1062.el7.x86_64 vmlinuz-0-rescue-49cc64831880418d97e702177a261014 vmlinuz-3.10.0-1062.el7.x86_64 [root@yunxuan server]# ls /boot/ #<==== 逐列显示 config-3.10.0-1062.el7.x86_64 initramfs-0-rescue-49cc64831880418d97e702177a261014.img vmlinuz-0-rescue-49cc64831880418d97e702177a261014 efi initramfs-3.10.0-1062.el7.x86_64.img vmlinuz-3.10.0-1062.el7.x86_64 grub symvers-3.10.0-1062.el7.x86_64.gz grub2 System.map-3.10.0-1062.el7.x86_64
[root@yunxuan server]# ll --time-style=long-iso total 0 -rw-r--r--. 1 root root 0 2020-11-03 23:40 001.jpg lrwxrwxrwx. 1 root root 7 2020-11-03 22:01 001_link.txt -> 001.txt -rw-r--r--. 1 root root 0 2020-11-03 21:59 001.txt -rw-r--r--. 1 root root 0 2020-11-03 23:41 002.png -rw-r--r--. 1 root root 0 2020-11-03 23:41 003.png -rw-r--r--. 1 root root 0 2020-11-03 23:41 004.png drwxr-xr-x. 2 root root 113 2020-10-26 12:18 scripts drwxr-xr-x. 2 root root 6 2020-10-17 08:07 tools -rw-r--r--. 1 root root 0 2020-11-03 23:40 xyz.tar.gz
参数 -F 特殊指示符详细说明
1. 文件名末尾加 "*" ,表示该文件为可执行的普通文件
[root@yunxuan server]# ll /usr/bin/ -F total 115760 -rwxr-xr-x. 1 root root 41488 Aug 20 2019 [* -rwxr-xr-x. 1 root root 107904 Jan 22 2019 a2p* -rwxr-xr-x. 1 root root 11248 Aug 13 2019 abrt-action-analyze-backtrace* -rwxr-xr-x. 1 root root 11232 Aug 13 2019 abrt-action-analyze-c* -rwxr-xr-x. 1 root root 1345 Aug 13 2019 abrt-action-analyze-ccpp-local*
2. 文件名末尾加 "/" ,表示目录
[root@yunxuan server]# ll -F total 0 -rw-r--r--. 1 root root 0 Nov 3 23:40 001.jpg lrwxrwxrwx. 1 root root 7 Nov 3 22:01 001_link.txt -> 001.txt drwxr-xr-x. 2 root root 113 Oct 26 12:18 scripts/ drwxr-xr-x. 2 root root 6 Oct 17 08:07 tools/ -rw-r--r--. 1 root root 0 Nov 3 23:40 xyz.tar.gz
3. 文件名末尾加 "=" ,表示套接字(sockets)
[root@yunxuan server]# ll -F /dev/log srw-rw-rw-. 1 root root 0 Oct 17 03:16 /dev/log=
4. 文件名末尾加 "|" ,表示管道文件
[root@yunxuan server]# ll -F /run/systemd/initctl/fifo prw-------. 1 root root 0 Oct 17 03:16 /run/systemd/initctl/fifo|
5. 文件名末尾加 "@",表示软链接文件
[root@yunxuan server]# ll -F total 0 -rw-r--r--. 1 root root 0 Nov 3 23:40 001.jpg lrwxrwxrwx. 1 root root 7 Nov 3 22:01 001_link.txt -> 001.txt -rw-r--r--. 1 root root 0 Nov 3 21:59 001.txt -rw-r--r--. 1 root root 0 Nov 3 23:41 002.png -rw-r--r--. 1 root root 0 Nov 3 23:41 003.png -rw-r--r--. 1 root root 0 Nov 3 23:41 004.png drwxr-xr-x. 2 root root 113 Oct 26 12:18 scripts/ drwxr-xr-x. 2 root root 6 Oct 17 08:07 tools/ -rw-r--r--. 1 root root 0 Nov 3 23:40 xyz.tar.gz [root@yunxuan server]# ls -F 001.jpg 001_link.txt@ 001.txt 002.png 003.png 004.png scripts/ tools/ xyz.tar.gz