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