linux常用的命令之一:ls
ls == list,根据不同的选项,列举指定目录或文件的相关信息,是Linux下最常用的命令之一,cd到某一目录下后执行的第一个命令。
ls命令格式:ls [OPTION]...[FILE]...
列举文件信息(默认为当前目录)。
1.ls
无参数:显示当前目录下的文件和目录(隐藏文件除外)。
Folder: 显示Folder目录中的文件和子目录。
File:显示File文件信息(默认为文件名)。
1 [root@localhostusr]# ls
bin etc games include lib libexec local sbin share src tmp
2 [[root@localhost usr]# ls /usr/local/
bin etc games include lib libexec man mysql sbin share src
2.ls -a
-a选项同ls,但会列举当前目录或者指定目录下的所有文件,包括dot文件(.开头的文件)和.目录和..目录。
1 [root@localhost/]# ls -a /usr
. .. bin etc games include lib libexec local sbin share src tmp
3.ls -A
-A选项同ls,但会列举当前目录或者指定目录下的所有文件,包括dot文件(.开头的文件),但不包括.目录和..目录。
1 [root@localhost/]# ls -A /usr
bin etc games include lib libexec local sbin share src tmp
4.ls -l
-l选项的ls命令将列举当前目录或指定目录中文件或者子目录的详析信息。
1 [root@localhost/]# ls -l
total 134
-rw-r--r--. 1 root root 3 Sep 27 02:11 aba.txt
drwxr-xr-x 3 root root 4096 Oct 19 13:20 app
drwxr-xr-x 5 root root 4096 Oct 19 12:13 application
dr-xr-xr-x. 2 root root 4096 Nov 17 09:37 bin
dr-xr-xr-x. 5 root root 1024 Sep 23 16:15 boot
drwxr-xr-x. 4 mysql mysql 4096 Dec 27 06:28 data
drwxr-xr-x 16 root root 3560 Mar 8 13:18 dev
drwxr-xr-x. 94 root root 4096 Mar 8 14:32 etc
ls -l列举的信息包含7个以Tab的域:
· 第一个域:第一个字符指明了文件类型
· -: 普通文件;
· d: 目录文件;
· l: 符号链接;
· s: socket文件;
· b: 块设备;
· c: 字符设备;
· p: 管道文件。
后面的9个字符指明了文件的访问权限:每三位指明一类用户的权限,分别是文件属主、同组用户、其它用户,权限分为读(r)、写(w)、执行(x)。
· 第二个域:链接数。普通文件至少为1,目录至少为2(.和..);
· 第三域:文件属主;
· 第四域:用户组;
· 第五域:文件大小,其中目录大小通常为块大小的整数倍;
· 第六域:文件的最近修改日期和时间,修改文件意味着对其内文件或子目录
· 的增添和修改;
· 第七域:文件名
5.ls -t
按文件的修改时间列举文件,最近修改的在前。
1 [root@localhost/]# ls /usr
bin etc games include lib libexec local sbin share src tmp
2 [root@localhost/]# ls -t /usr
bin lib libexec sbin include src local share tmp etc games
6.ls -r
以相反顺序列举文件。
1 [root@localhost/]# ls /usr
bin etc games include lib libexec local sbin share src tmp
2 [root@localhost/]# ls -r /usr
tmp src share sbin local libexec lib include games etc bin
7.ls -1
单独行列举文件。
1 [root@localhost/]# ls -1
aba.txt
app
application
bin
boot
data
dev
8.ls -F
可视化显示文件类型。
1 [root@localhost/]# ls -F
aba.txt bin/ dev/ lib/ mnt/ opt/ sbin/ srv/ usr/
app/ boot/ etc/ lost+found/ oldboy/ proc/ selinux/ sys/ var/
application/ data/ home/ media/ oldgirl/ root/ server/ tmp/
· / :目录
· nothing :普通文件.
· @ :符号链接文件
· * :可执行文件
举例: 其中,“*”号代表任意个字符(包括0个),“?”号代表一个字符。
9.ls /etc/a*e
列出/etc/目录下以字母a开头且以字母e结尾的目录和文件。
1 [root@localhost/]# ls /etc/a*e
/etc/adjtime
10. ls /bin/l?
列出/bin/目录下以字母b开头的目录和文件,且目录名或文件名的长度为2.
1 [root@localhost/]# ls /bin/l?
/bin/ln /bin/ls
11. ls |more
当要显示的文件数太多(如/usr/bin/下的文件),这是一页屏不能显示,如果直接运行“ls /usr/bin”,则不能看见最前面的文件。这时用到通道“|more”,来显示多页屏输出(按空格显示下一页,回车显示下一行)。
1 [root@localhost /]# ls /usr/bin |more
GET
HEAD
POST
[
a2p
ab
abrt-action-analyze-backtrace
abrt-action-analyze-c
abrt-action-analyze-core
abrt-action-analyze-oops
abrt-action-analyze-python
abrt-action-generate-backtrace
abrt-action-generate-core-backtrace
abrt-action-install-debuginfo
abrt-action-list-dsos
abrt-action-save-package-data
abrt-action-trim-files
abrt-cli
abrt-dedup-client
abrt-dump-oops