Linux ls(英文全拼:list files)命令用于显示指定工作目录下之内容(列出目前工作目录所含之文件及子目录)。
语法
ls [-alrtAFR] [name...]
参数 :
-a 显示所有文件及目录 (. 开头的隐藏文件也会列出)
-l 除文件名称外,亦将文件型态、权限、拥有者、文件大小等资讯详细列出
-r 将文件以相反次序显示(原定依英文字母次序)
-t 将文件依建立时间之先后次序列出
-A 同 -a ,但不列出 "." (目前目录) 及 ".." (父目录)
-F 在列出的文件名称后加一符号;例如可执行档则加 "*", 目录则加 "/"
-R 若目录下有文件,则以下之文件亦皆依序列出
实例
列出根目录()下的所有目录:
ls /
列出根目录下所有名称是 l 开头的文件,越新的排越后面 :
ls -ltr /l*
将 /home 目录以下所有目录及文件详细资料列出 :
ls -lR /home
列出目前工作目录下所有文件及目录;目录于名称后加 "/", 可执行档于名称后加 "*" :
ls -AF
ls -l
命令显示结果每一列代表什么意思
例如我在某个目录下键入ls -l可能会显示如下信息(最上面两行是我自己加的,人为的加上了表格,显示):
1 | 2 | 3 | 4 | 5 | 6 | 7 |
---|---|---|---|---|---|---|
文件属性 | 文件数 | 拥有者 | 所属的group | 文件大小 | 建档日期 | 文件名 |
drwx------ | 2 | Guest | users | 1024 | Nov 21 21:05 | |
-rwx--x--x | 1 | root | root | 89080 | Nov 7 22:41 | tar* |
-rwxr-xr-x | 1 | root | bin | 5013 | Aug 15 9:32 | uname* |
lrwxrwxrwx | 1 | root | root | 4 | Nov 24 19:30 | zcat->gzip |
-rwxr-xr-x | 1 | root | bin | 308364 | Nov 29 7:43 | zsh* |
-rwsr-x--- | 1 | root | bin | 9853 | Aug 15 5:46 | su* |
下面,我为大家解释一下这些显示内容的意义。
第一个栏位,表示文件的属性。
- 在 Linux 中第一个字符代表这个文件是目录、文件或链接文件等等。
- 当为 d 则是目录
- 当为 - 则是文件;
- 若是 l 则表示为链接文档(link file);
- 若是 b 则表示为装置文件里面的可供储存的接口设备(可随机存取装置);
- 若是 c 则表示为装置文件里面的串行端口设备,例如键盘、鼠标(一次性读取装置)。
- 接下来的字符中,以三个为一组,且均为 rwx 的三个参数的组合。其中, r 代表可读(read)、 w 代表可写(write)、 x 代表可执行(execute)。 要注意的,三个权限位置不会改变,如果没有权限,就会出现减号 - 。
因为Linux是多用户多任务系统,所以一个文件可能同时被许多人使用,所以我们一定要设好每个文件的权限,其文件的权限位置排列顺序是(以-rwxr-xr-x为例):
rwx(Owner)r-x(Group)r-x(Other)
这个例子表示的权限是:使用者自己可读,可写,可执行;同一组的用户可读,不可写,可执行;其它用户可读,不可写,可执行。
另外,有一些程序属性的执行部分不是X,而是S,这表示执行这个程序的使用者,临时可以有和拥有者一样权力的身份来执行该程序。一般出现在系统管理之类的指令或程序,让使用者执行时,拥有root身份。{在此处补充GUID的相关知识}
第二个栏位,表示文件个数。
如果是文件的话,那这个数目自然是1了,如果是目录的话,那它的数目就是该目录中的文件个数了。
第三个栏位,表示该文件或目录的拥有者。
若使用者目前处于自己的Home,那这一栏大概都是它的账号名称。
第四个栏位,表示所属的组(group)。
每一个使用者都可以拥有一个以上的组,不过大部分的使用者应该都只属于一个组,只有当系统管理员希望给予某使用者特殊权限时,才可能会给他另一个组。
第五栏位,表示文件大小。
文件大小用byte来表示。
第六个栏位,表示创建日期。
以“月,日,时间”的格式表示,如Aug 15 5:46表示8月15日早上5:46分。
第七个栏位,表示文件名。
我们可以用ls –a显示隐藏的文件名。
网友评论