ls是Linux下最常用的命令之一。就像到了一个房间,你要环视一下四周这个房间里都有什么一样,到了一个目录,你也会不由自主的ls一下,看看这个目录里都有什么。
显示目录内容
ls [optioin] [argument]
-l 显示详细信息 -a 显示所有文件,包括隐藏文件 -i 显示文件的inode号
ls可以直接用,后面不跟任何选项和参数,这个时候就是显示当前目录下的目录和文件的名字。
[peter@ibi98 ~]$ ls
[peter@ibi98 ~]$
如果您的账号是新的,这里就没有任何结果,这是因为你还没有创建过目录或文件。先别着急,下一节我们就来学习如何创建自己的目录。
也可以在ls后只跟选项,如-a,显示的是当前目录下所有文件(包括隐藏文件,Linux下以.开头的文件是隐藏文件)的名字。
[peter@ibi98 ~]$ ls -a
. .. .bash_logout .bash_profile .bashrc .gnome2 .mozilla
后面几个隐藏文件是用户的配置文件,我们留到后面再讲。这里还有两个特殊的文件,我们前面已经提到过,一个点(.)代表当前目录,两个点(..)代表上一层目录。
ls后面也可以跟多个选项,显示的是当前目录所有文件(包括隐藏文件)的详细信息 ,包括文件类型、权限、硬链接的个数、属主、所属的用户组、最后修改时间和文件名。
[peter@ibi98 ~]$ ls -la
总用量 28
drwx------ 4 peter peter 4096 2月 15 09:23 .
drwxr-xr-x. 35 root root 4096 2月 15 09:23 ..
-rw-r--r-- 1 peter peter 18 7月 24 2012 .bash_logout
-rw-r--r-- 1 peter peter 193 7月 24 2012 .bash_profile
-rw-r--r-- 1 peter peter 124 7月 24 2012 .bashrc
drwxr-xr-x 2 peter peter 4096 2月 8 2011 .gnome2
drwxr-xr-x 4 peter peter 4096 10月 11 2012 .mozilla
运行结果第一行的总用量指的是所有显示的目录和文件所用的磁盘空间大小(单位为K),具体的算法是其所用的的块数*块的大小,并不是文件的真实大小。(关于磁盘的块,请参看扩展学习的inode一节)
如果ls后只有一个参数,没有选项,有两种情况,如果这个参数是个文件(这样用也没有什么意义),结果只是显示这个文件名字;如果这个参数是个目录,则显示这个目录下的所有目录和文件的名字。如:
[peter@ibi98 linux]$ ls /
bin boot dev etc home lib lib64 lost+found media mnt opt proc pub root run
sbin srv sys tmp usr var
ls后既有选项又有参数如:
[peter@ibi98 ~]$ ls -l /home/pub/fungi
总用量 4
drwxr-xr-x 7 xiezy xiezy 4096 4月 27 2014 Saccharomyces_cerevisiae
显示的是根目录下home目录下的fungi目录中所有文件的详细信息。
最后是ls选项的说明:
-a 列出目录下的所有文件,包括以.开头的隐藏文件。 -b 把文件名中不可输出的字符用反斜杠加字符编号(就象在C语言里一样)的形式列出。 -c 输出文件的i节点的修改时间,并以此排序。 -d 将目录象文件一样显示,而不是显示其下的文件。 -e 输出时间的全部信息,而不是输出简略信息。 -f -U 对输出的文件不排序。 -g 与-l类似,只是不显示用户组。 -i 输出文件的i节点的索引信息。 -k 以k字节的形式表示文件的大小。 -l 列出文件的详细信息。 -m 横向输出文件名,并以","作分格符。 -n 用数字的 UID,GID 代替名称。 -o 显示文件的除组信息外的详细信息。 -p -F 在每个文件名后附上一个字符以说明该文件的类型,“*”表示可执行的普通文件; “/”表示目录;“@”表示符号链接;“|”表示FIFOs;“=”表示套接字(sockets)。 -q 用?代替不可输出的字符。 -r 对目录反向排序。 -s 在每个文件名后输出该文件的大小。 -t 以时间排序。 -u 以文件上次被访问的时间排序。 -x 按列输出,横向排序。 -A 显示除 “.”和“..”外的所有文件。 -B 不输出以 “~”结尾的备份文件。 -C 按列输出,纵向排序。 -G 输出文件的组的信息。 -L 列出链接文件名而不是链接到的文件。 -N 不限制文件长度。 -Q 把输出的文件名用双引号括起来。 -R 列出所有子目录下的文件。 -S 以文件大小排序。 -X 以文件的扩展名(最后一个 . 后的字符)排序。 -1 一行只输出一个文件。
下一节我们就来学习怎样创建自己的目录。