via: https://linux.cn/article-5109-1.html
ls的基本命令就不做介绍了
4. 用 -lh 选项来以易读方式列出文件
用-lh组合选项,以易读方式来显示大小。
#ls -lh
total 176K
-rw-r--r--.1 root root 683Aug1909:590001.pcap
-rw-------.1 root root 1.6KJul3102:17 anaconda-ks.cfg
drwxr-xr-x.2 root root 4.0KJul3102:48Desktop
drwxr-xr-x.2 root root 4.0KJul3102:48Documents
drwxr-xr-x.4 root root 4.0KAug1602:55Downloads
-rw-r--r--.1 root root 21KAug1212:42 fbcmd_update.php
-rw-r--r--.1 root root 46KJul3109:58 index.html
-rw-r--r--.1 root root 48KJul3102:17 install.log
-rw-r--r--.1 root root 12KJul3102:13 install.log.syslog
drwxr-xr-x.2 root root 4.0KJul3102:48Music
drwxr-xr-x.2 root root 4.0KJul3102:48Pictures
drwxr-xr-x.2 root root 4.0KJul3102:48Public
drwxr-xr-x.2 root root 4.0KJul3102:48Templates
drwxr-xr-x.2 root root 4.0KJul3102:48Videos
5. 以尾部以‘/’字符结尾的方式列出文件和目录
使用 ls 命令的 -F 选项,会在每个目录的末尾添加“/”字符显示。
#ls -F
0001.pcapDesktop/Downloads/ index.html install.log.syslog Pictures/Templates/
anaconda-ks.cfg Documents/ fbcmd_update.php install.log Music/Public/Videos/
6. 倒序列出文件
ls -r 选项能以倒序方式显示文件和目录。
#ls -r
VideosPublicMusic install.log fbcmd_update.php Documents anaconda-ks.cfg
TemplatesPictures install.log.syslog index.html DownloadsDesktop0001.pcap
7. 递归列出子目录
ls -R 选项能列出非常长的目录树,来看看示例输出:
#ls -R
total 1384
-rw-------.1 root root 33408Aug817:25 anaconda.log
-rw-------.1 root root 30508Aug817:25 anaconda.program.log
./httpd:
total 132
-rw-r--r--1 root root 0Aug1903:14 access_log
-rw-r--r--.1 root root 61916Aug1017:55 access_log-20120812
./lighttpd:
total 68
-rw-r--r--1 lighttpd lighttpd 7858Aug2115:26 access.log
-rw-r--r--.1 lighttpd lighttpd 37531Aug1718:21 access.log-20120819
./nginx:
total 12
-rw-r--r--.1 root root 0Aug1203:17 access.log
-rw-r--r--.1 root root 390Aug1203:17 access.log-20120812.gz
8. 以修改时间倒序列出
带-ltr组合选项能以文件或目录的最新修改时间的次序来显示它们。
#ls -ltr
total 176
-rw-r--r--.1 root root 11439Jul3102:13 install.log.syslog
-rw-r--r--.1 root root 48867Jul3102:17 install.log
-rw-------.1 root root 1586Jul3102:17 anaconda-ks.cfg
drwxr-xr-x.2 root root 4096Jul3102:48Desktop
drwxr-xr-x.2 root root 4096Jul3102:48Videos
drwxr-xr-x.2 root root 4096Jul3102:48Templates
drwxr-xr-x.2 root root 4096Jul3102:48Public
drwxr-xr-x.2 root root 4096Jul3102:48Pictures
drwxr-xr-x.2 root root 4096Jul3102:48Music
drwxr-xr-x.2 root root 4096Jul3102:48Documents
-rw-r--r--.1 root root 46701Jul3109:58 index.html
-rw-r--r--.1 root root 21262Aug1212:42 fbcmd_update.php
drwxr-xr-x.4 root root 4096Aug1602:55Downloads
-rw-r--r--.1 root root 683Aug1909:590001.pcap
9. 按文件大小排序
带-lS组合选项能按文件从大到小的次序显示。
#ls -lS
total 176
-rw-r--r--.1 root root 48867Jul3102:17 install.log
-rw-r--r--.1 root root 46701Jul3109:58 index.html
-rw-r--r--.1 root root 21262Aug1212:42 fbcmd_update.php
-rw-r--r--.1 root root 11439Jul3102:13 install.log.syslog
drwxr-xr-x.2 root root 4096Jul3102:48Desktop
drwxr-xr-x.2 root root 4096Jul3102:48Documents
drwxr-xr-x.4 root root 4096Aug1602:55Downloads
drwxr-xr-x.2 root root 4096Jul3102:48Music
drwxr-xr-x.2 root root 4096Jul3102:48Pictures
drwxr-xr-x.2 root root 4096Jul3102:48Public
drwxr-xr-x.2 root root 4096Jul3102:48Templates
drwxr-xr-x.2 root root 4096Jul3102:48Videos
-rw-------.1 root root 1586Jul3102:17 anaconda-ks.cfg
-rw-r--r--.1 root root 683Aug1909:590001.pcap
10. 显示文件或目录的索引节点号
我们有时候可以看到一些数字打印在文件或目录名之前,带-i选项就能列出文件或目录的索引节点号。
#ls -i
201120001.pcap23610Documents23793 index.html 23611Music23597Templates
23564 anaconda-ks.cfg 23595Downloads22 install.log 23612Pictures23613Videos
23594Desktop23585 fbcmd_update.php 35 install.log.syslog 23601Public
11. 显示ls命令的版本
查看ls命令的版本。
#ls --version
ls(GNU coreutils)8.4
Copyright(C)2010FreeSoftwareFoundation,Inc.
LicenseGPLv3+: GNU GPL version 3or later <http://gnu.org/licenses/gpl.html>.
Thisis free software: you are free to change and redistribute it.
Thereis NO WARRANTY, to the extent permitted by law.
Written by Richard M.StallmanandDavidMacKenzie.
12. 显示帮助页面
列出ls命令的选项帮助页面。
#ls --help
Usage:ls[OPTION]...[FILE]...
13. 列出目录信息
用ls -l命令列出/tmp目录下的文件,其中-ld参数可以只显示/tmp目录的信息。
#ls -l /tmp
total 408
drwx------.2 narad narad 4096Aug202:00 CRX_75DAF8CB7768
-r--------.1 root root 384683Aug412:28htop-1.0.1.tar.gz
drwx------.2 root root 4096Aug411:20 keyring-6Mfjnk
drwx------.2 root root 4096Aug1601:33 keyring-pioZJr
drwx------.2 gdm gdm 4096Aug2111:26 orbit-gdm
drwx------.2 root root 4096Aug1908:41 pulse-gl6o4ZdxQVrX
drwx------.2 narad narad 4096Aug408:16 pulse-UDH76ExwUVoU
drwx------.2 gdm gdm 4096Aug2111:26 pulse-wJtcweUCtvhn
-rw-------.1 root root 300Aug1603:34 yum_save_tx-2012-08-16-03-34LJTAa1.yumtx
#ls-ld/tmp/
drwxrwxrwt.13 root root 4096Aug2112:48/tmp/
14. 显示文件的UID和GID
用ls -n命令来显示文件和目录的UID(译者注:userid,用户ID)和GID(译者注:groupid,组ID)。
#ls -n
total 36
drwxr-xr-x.25005004096Aug201:52Downloads
drwxr-xr-x.25005004096Aug201:52Music
drwxr-xr-x.25005004096Aug201:52Pictures
-rw-rw-r--.150050012Aug2113:06 tmp.txt
drwxr-xr-x.25005004096Aug201:52Videos
15. ls命令和它的别名
我们给ls命令设置如下别名之后,当我们执行ls命令的时候它会默认执行-l选项并且像上文提到的那样显示长列表。
#alias ls="ls -l"
注意:我们可以通过不加任何参数的alias命令来看到目前系统中可用的所有alias设置,当然它们同时也可以unalias来取消。
#alias
aliascp='cp -i'
alias l.='ls -d .* --color=auto'
alias ll='ls -l --color=auto'
aliasls='ls --color=auto'
aliasmv='mv -i'
aliasrm='rm -i'
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'
删除一项之前定义的alias设置,只需用unalias命令即可。
# unalias ls