ls
历史
ls首次出现于原始版本的AT&T Unix中。它的名字来源于Multics操作系统的一个类似命令,意思是“列出文档块”。目前有两种主流版本的ls:一种是自由软件基金会开发的GNU内核进程的组成部分;另一种由各种BSD版本发布,如FreeBSD、OpenBSD、NetBSD和苹果公司的Darwin。两种版本都是自由以及开源软件。
使用方法
在Unix和类Unix操作系统中都有当前目录的概念,也即进程目前在目录树中的位置。
当不加参数运行时,ls列出当前目录下的除隐藏文档外的所有文档和目录名。如果以目录名作为参数,则会列出该目录下的文档。用户也可以指定多个文档和目录作为参数,ls则会列出所有指定的文档和目录中的文档名。
以 "."(圆点)开头的目录在一般情况下不会被列出。用户可以加 -a
选项查看所有文档。
不加参数时,ls仅仅列出文档和目录的名称,不加任何修饰。这通常让人很难区分文档的类型、大小、权限等属性。显示文档常用信息的一些参数如下:
-l
(long)长格式,显示文档类型、权限、硬链接的数目、文档拥有者、文档所在的组、大小、日期和文档名。-F
在不同类型的文档的文档名结尾追加一个字符以示区别。可执行文档后加"*",目录后加"/",管道文档后加"|",套接字文档后加"=",普通文档没有后缀。-a
(all)显示所有文档,包括以 . 开头的文档名(默认不显示)。-A
(all)显示所有文档,不包括以.
(自身目录)和..
(父目录)。相关词条:Inode-R
(recursive)迭代显示目录下所有的子目录。ls -R/
会显示文档系统中的所有文档。-d
(directory)显示目录本身的信息,而不是列出目录下的文档。
在某些环境下,使用参数--color
(GNU版)或者"-G"(FreeBSD版)后,ls会根据文档类型输出不同色彩的格式。GNU版的ls根据文档的类型、扩展名和使用权限来决定颜色,而FreeBSD版的ls仅仅检查文档类型和使用权限。
使用上述彩色选项时,输出示例如下:
brw-r--r-- 1 unixguy staff 64, 64 Jan 27 05:52 block
crw-r--r-- 1 unixguy staff 64, 255 Jan 26 13:57 character
-rw-r--r-- 1 unixguy staff 290 Jan 26 14:08 compressed.gz
-rw-r--r-- 1 unixguy staff 331836 Jan 26 14:06 data.ppm
drwxrwx--x 2 unixguy staff 48 Jan 26 11:28 directory
-rwxrwx--x 1 unixguy staff 29 Jan 26 14:03 executable
prw-r--r-- 1 unixguy staff 0 Jan 26 11:50 fifo
lrwxrwxrwx 1 unixguy staff 3 Jan 26 11:44 link -> dir
-rw-rw---- 1 unixguy staff 217 Jan 26 14:08 regularfile
ls有大量的选项,具体的用法请参考ls的手册页。
示例
下面的例子演示了不同参数下ls的使用。
$ pwd
/home/unixguy
$ ls -l
drwxr--r-- 1 unixguy editors 4096 drafts
-rw-r--r-- 1 unixguy editors 30405 edition-32
-r-xr-xr-x 1 unixguy users 8460 edit
$ ls -F
drafts/
edition-32
edit*
本例中,用户unixguy有一个名叫drafts的目录,一个叫做edition-32的常规文档和一个叫做edit的可执行文档。
外部链接
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.