Linux中的15个基本的'ls'命令示例
我们可能不知道也不会使用所有可用的LS选项,但我们每天都会频繁使用ls命令。在本文中,我们将讨论基本的ls命令,我们尽量覆盖更多的参数。
1.使用ls列出文件,没有选项
ls没有以裸露格式列出文件和目录的选项,因此我们将无法查看详细信息,例如文件类型,大小,修改的日期和时间,权限和链接等。
# ls
0001.pcap | Desktop | Downloads | index.html | install.log.syslog | Pictures | Templates
|
anaconda-ks.cfg | Documents | fbcmd_update.php | install.log | Music | Public | Videos |
2个带有选项–l的列表文件
在这里,ls -l(-l不是字符)显示文件或目录,大小,修改的日期和时间,文件或文件夹的名称以及文件的所有者及其许可。
# ls -l total 176 -rw-r--r--. 1 root root 683 Aug 19 09:59 0001.pcap -rw-------. 1 root root 1586 Jul 31 02:17 anaconda-ks.cfg drwxr-xr-x. 2 root root 4096 Jul 31 02:48 Desktop drwxr-xr-x. 2 root root 4096 Jul 31 02:48 Documents drwxr-xr-x. 4 root root 4096 Aug 16 02:55 Downloads -rw-r--r--. 1 root root 21262 Aug 12 12:42 fbcmd_update.php -rw-r--r--. 1 root root 46701 Jul 31 09:58 index.html -rw-r--r--. 1 root root 48867 Jul 31 02:17 install.log -rw-r--r--. 1 root root 11439 Jul 31 02:13 install.log.syslog drwxr-xr-x. 2 root root 4096 Jul 31 02:48 Music drwxr-xr-x. 2 root root 4096 Jul 31 02:48 Pictures drwxr-xr-x. 2 root root 4096 Jul 31 02:48 Public drwxr-xr-x. 2 root root 4096 Jul 31 02:48 Templates drwxr-xr-x. 2 root root 4096 Jul 31 02:48 Videos
3.查看隐藏的文件
列出所有文件,包括开头的隐藏文件
# ls -a
. | .bashrc | Documents | .gconfd | install.log | .nautilus | .pulse-cookie |
.. | .*** | Downloads | .gnome2 | install.log.syslog | .netstat.swp | .recently-used.xbel
|
0001.pcap | .config | .elinks | .gnome2_private | .kde | .opera | .spice-vdagent
|
anaconda-ks.cfg | .cshrc | .esd_auth | .gtk-bookmarks | .libreoffice | Pictures | .tcshrc
|
.bash_history | .dbus | .fbcmd | .gvfs | .local | .pki | Templates |
.bash_logout | Desktop | fbcmd_update.php | .ICEauthority | .mozilla | Public | Videos |
.bash_profile | .digrc | .gconf | index.html | Music | .pulse | .wireshark |
4.使用选项-lh列出具有可读性格式文件
结合使用-lh选项,罗列出可读的格式并且显示大小。
# ls -lh total 176K -rw-r--r--. 1 root root 683 Aug 19 09:59 0001.pcap -rw-------. 1 root root 1.6K Jul 31 02:17 anaconda-ks.cfg drwxr-xr-x. 2 root root 4.0K Jul 31 02:48 Desktop drwxr-xr-x. 2 root root 4.0K Jul 31 02:48 Documents drwxr-xr-x. 4 root root 4.0K Aug 16 02:55 Downloads -rw-r--r--. 1 root root 21K Aug 12 12:42 fbcmd_update.php -rw-r--r--. 1 root root 46K Jul 31 09:58 index.html -rw-r--r--. 1 root root 48K Jul 31 02:17 install.log -rw-r--r--. 1 root root 12K Jul 31 02:13 install.log.syslog drwxr-xr-x. 2 root root 4.0K Jul 31 02:48 Music drwxr-xr-x. 2 root root 4.0K Jul 31 02:48 Pictures drwxr-xr-x. 2 root root 4.0K Jul 31 02:48 Public drwxr-xr-x. 2 root root 4.0K Jul 31 02:48 Templates drwxr-xr-x. 2 root root 4.0K Jul 31 02:48 Videos
5.列出末尾带有“ /”字符的文件和目录
ls命令中使用-F选项,将在每个目录的末尾添加'/'字符。
#Ls -F
0001.pcap
| Desktop/
| 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
Videos
| Public
| Music
| install.log
| fbcmd_update.php
| Documents
| anaconda-ks.cfg
|
Templates
| Pictures
| install.log.syslog
| index.html
| Downloads
| Desktop
| 0001.pcap
|
7.递归列出子目录
ls -R选项将列出很长的列表目录树。请参阅命令输出示例。
# ls -R total 1384 -rw-------. 1 root root 33408 Aug 8 17:25 anaconda.log -rw-------. 1 root root 30508 Aug 8 17:25 anaconda.program.log ./httpd: total 132 -rw-r--r-- 1 root root 0 Aug 19 03:14 access_log -rw-r--r--. 1 root root 61916 Aug 10 17:55 access_log-20120812 ./lighttpd: total 68 -rw-r--r-- 1 lighttpd lighttpd 7858 Aug 21 15:26 access.log -rw-r--r--. 1 lighttpd lighttpd 37531 Aug 17 18:21 access.log-20120819 ./nginx: total 12 -rw-r--r--. 1 root root 0 Aug 12 03:17 access.log -rw-r--r--. 1 root root 390 Aug 12 03:17 access.log-20120812.gz
8.反向输出顺序
与-ltr组合使用时,将显示最新的修改文件或目录日期。
# ls -ltr total 176 -rw-r--r--. 1 root root 11439 Jul 31 02:13 install.log.syslog -rw-r--r--. 1 root root 48867 Jul 31 02:17 install.log -rw-------. 1 root root 1586 Jul 31 02:17 anaconda-ks.cfg drwxr-xr-x. 2 root root 4096 Jul 31 02:48 Desktop drwxr-xr-x. 2 root root 4096 Jul 31 02:48 Videos drwxr-xr-x. 2 root root 4096 Jul 31 02:48 Templates drwxr-xr-x. 2 root root 4096 Jul 31 02:48 Public drwxr-xr-x. 2 root root 4096 Jul 31 02:48 Pictures drwxr-xr-x. 2 root root 4096 Jul 31 02:48 Music drwxr-xr-x. 2 root root 4096 Jul 31 02:48 Documents -rw-r--r--. 1 root root 46701 Jul 31 09:58 index.html -rw-r--r--. 1 root root 21262 Aug 12 12:42 fbcmd_update.php drwxr-xr-x. 4 root root 4096 Aug 16 02:55 Downloads -rw-r--r--. 1 root root 683 Aug 19 09:59 0001.pcap
9.按文件大小对文件排序
与-lS组合使用时,按顺序显示文件大小,将首先显示大文件。
# ls -lS total 176 -rw-r--r--. 1 root root 48867 Jul 31 02:17 install.log -rw-r--r--. 1 root root 46701 Jul 31 09:58 index.html -rw-r--r--. 1 root root 21262 Aug 12 12:42 fbcmd_update.php -rw-r--r--. 1 root root 11439 Jul 31 02:13 install.log.syslog drwxr-xr-x. 2 root root 4096 Jul 31 02:48 Desktop drwxr-xr-x. 2 root root 4096 Jul 31 02:48 Documents drwxr-xr-x. 4 root root 4096 Aug 16 02:55 Downloads drwxr-xr-x. 2 root root 4096 Jul 31 02:48 Music drwxr-xr-x. 2 root root 4096 Jul 31 02:48 Pictures drwxr-xr-x. 2 root root 4096 Jul 31 02:48 Public drwxr-xr-x. 2 root root 4096 Jul 31 02:48 Templates drwxr-xr-x. 2 root root 4096 Jul 31 02:48 Videos -rw-------. 1 root root 1586 Jul 31 02:17 anaconda-ks.cfg -rw-r--r--. 1 root root 683 Aug 19 09:59 0001.pcap
10.显示文件或目录的索引节点号
我们可以看到在文件/目录名称之前打印了一些数字。使用-i选项可列出具有inode编号的文件/目录。
#ls -i
20112 0001.pcap
| 23610 Documents
| 23793 index.html
| 23611 Music
| 23597 Templates
|
23564 anaconda-ks.cfg
| 23595 Downloads
| 22 install.log
| 23612 Pictures
| 23613 Videos
|
23594 Desktop
| 23585 fbcmd_update.php
| 35 install.log.syslog
| 23601 Public
|
|
11显示ls命令的版本
检查ls命令的版本。
# ls --version ls (GNU coreutils) 8.4 Copyright (C) 2010 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>. This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Written by Richard M. Stallman and David MacKenzie.
12.显示帮助页面
列出ls命令的帮助页面及其选项。
# ls --help Usage: ls [OPTION]... [FILE]..
13.列出目录信息
使用ls -l命令列出目录/ tmp下的文件。其中-ld参数显示/ tmp目录的信息。
# ls -l /tmp total 408 drwx------. 2 narad narad 4096 Aug 2 02:00 CRX_75DAF8CB7768 -r--------. 1 root root 384683 Aug 4 12:28 htop-1.0.1.tar.gz drwx------. 2 root root 4096 Aug 4 11:20 keyring-6Mfjnk drwx------. 2 root root 4096 Aug 16 01:33 keyring-pioZJr drwx------. 2 gdm gdm 4096 Aug 21 11:26 orbit-gdm drwx------. 2 root root 4096 Aug 19 08:41 pulse-gl6o4ZdxQVrX drwx------. 2 narad narad 4096 Aug 4 08:16 pulse-UDH76ExwUVoU drwx------. 2 gdm gdm 4096 Aug 21 11:26 pulse-wJtcweUCtvhn -rw-------. 1 root root 300 Aug 16 03:34 yum_save_tx-2012-08-16-03-34LJTAa1.yumtx # ls -ld /tmp/ drwxrwxrwt. 13 root root 4096 Aug 21 12:48 /tmp/
14.显示文件的UID和GID
显示文件和目录的UID和GID。与ls命令一起使用选项-n。
# ls -n total 36 drwxr-xr-x. 2 500 500 4096 Aug 2 01:52 Downloads drwxr-xr-x. 2 500 500 4096 Aug 2 01:52 Music drwxr-xr-x. 2 500 500 4096 Aug 2 01:52 Pictures -rw-rw-r--. 1 500 500 12 Aug 21 13:06 tmp.txt drwxr-xr-x. 2 500 500 4096 Aug 2 01:52 Videos
15. ls命令及其别名
我们为ls命令设置了别名,当我们执行ls命令时,默认情况下将使用-l选项,并显示如前所述的长列表。
# alias ls="ls -l"
注意:通过下面的alias命令,我们可以看到系统中可用的别名数量,并且可以是非别名,如下例所示。
# alias alias cp='cp -i' alias l.='ls -d .* --color=auto' alias ll='ls -l --color=auto' alias ls='ls --color=auto' alias mv='mv -i' alias rm='rm -i' alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'
要删除先前定义的别名,只需使用unalias命令。
# unalias ls
在我们的下一篇文章中,我们将通过示例介绍更多的高级的LS命令
#Linux##C/C++#