Shell命令(每天学一个shell命令)第四天 shell ls命令实例:列出文件名和目录
ls命令是Linux中最常用的命令之一。在命令行提示符下,直接输入ls命令,不带任何选项,将列出当前目录下所有文件和目录,但是不会显示详细的信息,比如,文件类型、大小、修改日期、和时间、权限等等。
- 使用【-1】 选项,将每行显示一条记录:
注意:????上面是 杠数字1,并不是-L(故意大写的)
- 使用-l(现在是英文)选项,将以长列表格式显示文件和目录,包括文件类型、大小、修改日期和时间、权限等:
从上面的输出可以看出每航有7个字段,接下来说说每段的含义:-
第一个字符(不是字段哦):代表文件类型。在上面的例子中,第一个字符有的是连字符“-”,有的是字母“d”。使用ls -l命令的输出中,第一个字符可能有如下的几种情形:
-:普通文件;
d:目录;
s:套接字文件;
l:链接文件; - 字段1: 文件权限。接下来的9个字符指示文件的权限。每3个字符分别涉及所有者、用户组、和其他用户的读写执行权限。例如,rw-r----- 表示所有者有读写权限,用户组有读权限,而其他用户没有任何权限。
- 字段2:链接数。1表示只有一个链接到此文件;
- 字段3:所有者。在上例中,文件的所有者均为williamslife;
- 字段4:用户组。在上例中,文件的用户组均为williamslife;
- 字段5:文件大小。默认输出的大小单位是字节。
- 字段6:文件最后一次被修改的时间。例如上例中,文件hello.php最后一次被修改的时间是5月23日13:58
- 字段7:文件名。
-
第一个字符(不是字段哦):代表文件类型。在上面的例子中,第一个字符有的是连字符“-”,有的是字母“d”。使用ls -l命令的输出中,第一个字符可能有如下的几种情形:
- 使用-lh选项可以将文件大小显示为符合人类阅读习惯的格式;
- 使用-F选项,将使用不同的特殊字符归类不同的文件类型:
如上例所示:- / :表示目录;
- 无特殊字符:表示普通文件;
- @:表示链接文件;
-
*:表示可执行文件;
注意:你也可以使用ls --color=auto命令,将不同的文件类型显示为不同的颜色,或将–color与F选项联合使用。
- 联合使用-ld选项,可以以上列表格式列出某个目录的信息:
bogon:test williamslife$ ls -ld
drwxr-xr-x 7 williamslife staff 224 5 23 13:58 .
bogon:test williamslife$
- 使用R选项,将递归的列出子目录的内容:
- 联合使用-ltr选项,将以长列表格式按文件或目录的修改时间倒序地列出文件和目录:
- 联合使用-ls选项,将以长列表格式按文件大小顺序列出文件和目录:
bogon:test williamslife$ ls -ls
total 0
0 drwxr-xr-x 3 williamslife staff 96 5 23 16:12 dir1
0 drwxr-xr-x 2 williamslife staff 64 5 21 14:58 dir2
0 drwxr-xr-x 2 williamslife staff 64 5 21 14:58 dir3
0 -rw-r–[email protected] 1 williamslife staff 0 5 23 13:58 hello.php
- 使用-a选项,将列出包括隐藏文件或目录在内的所有文件和目录,包括“.”(当前目录)和“…”(父目录):
- 使用-A选项,将列出包括隐藏文件或目录(不包括 .和. .)在内的所有文件和目录:
- 使用-i选项,将显示文件或目录的inode编号,又是在系统维护操作时,你可能想知道文件的inode编号:
注意:在find命令中,你可以使用inode编号移除文件名中含有特殊字符的文件。
- 使用-n选项,其输出的内容类似于-l选项,指示显示uid和gid,替代显示所有者和用户组: