您的位置:首页 > 运维架构 > Linux

linux中ls命令详解

2012-04-12 10:27 471 查看
s 命令可以说是linux下最常用的命令之一。

-a 列出目录下的所有文件,包括以 . 开头的隐含文件。

-b 把文件名中不可输出的字符用反斜杠加字符编号(就象在C语言里一样)的形式列出。

-c 输出文件的 i 节点的修改时间,并以此排序。

-d 将目录象文件一样显示,而不是显示其下的文件。

-e 输出时间的全部信息,而不是输出简略信息。

-f -U 对输出的文件不排序。

-g 无用。

-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 一行只输出一个文件。

--color=no 不显示彩色文件名

--help 在标准输出上显示帮助信息。

--version 在标准输出上输出版本信息并退出。

只列出子目录

1. ls -F | grep /$ 或者 alias sub = "ls -F | grep /$"(linux)

2. ls -l | grep "^d" 或者 ls -lL | grep "^d" (Solaris)

计算当前目录下的文件数和目录数

下面命令可以分别计算当前目录下的文件和目录个数:

# ls -l * |grep "^-"|wc -l ---- to count files

# ls -l * |grep "^d"|wc -l ----- to count dir

显示彩色目录列表

打开/etc/bashrc, 加入如下一行:

alias ls="ls --color"

下次启动bash时就可以像在Slackware里那样显示彩色的目录列表了, 其中颜色的含义如下:

1. 蓝色-->目录

2. 绿色-->可执行文件

3. 红色-->压缩文件

4. 浅蓝色-->链接文件

5. 灰色-->其他文件

ls -tl --time-style=full-iso sshd

ls -ctl --time-style=long-iso

ls
命令的含义是list显示当前目录中的文件名字。注意不加参数它显示除隐藏文件外的所有文件及目录的名字。

1)ls –a
显示当前目录中的所有文件,包含隐藏文件
]# ls –a
.
.gnome2 .nautilus
..
.gnome2_private oracle_rpm
.bash_profile
.gtkrc-1.2-gnome2 tnsnames.ora
.bashrc
.ICEauthority types.h

注意隐藏文件是在文件名字以“.”(英文句号)开头的文件。

2)ls –l
显示文件及其详细信息。
]# ls –l
total 5
-rw-r--r--
1 root root
1668 Oct 3 2007 anaconda-ks.cfg
drwxr-xr-x
2 root root
4096 Nov 6 00:04 aa
显示的文件详细信息分别代表什么呢?以上面蓝色部分为例。
total 5
代表当前目录下文件大小的总和为5K(每个目录的大小都按4K算)
drwxr-xr-x
第一个字符有3种情况:“-”表示普通文件,“d”代表目录,“l”代表连接文件,“b”代表设备文件。
后面的9个字符每3个为一组,分别代表文件所有者、文件所有者所在用户组、其它用户对文件拥有的权限。每组中3个字符分别代表读、写、执行的权限,若没有其中的任何一个权限则用“-”表示。执行的权限有两个字符可选“x”代表可执行,“s”代表套接口文件。
紧接着的数字2代表
“aa”这个目录下的目录文件数目(这个数目=隐藏目录数目+普通目录数目)。我们进入“aa”目录用命令
ls –al (为了看到隐藏文件我们加上-a这个参数)
]# ls -al
total 8
drwxr-xr-x
2 root root
4096 Nov 6 00:04 .
drwxr-x---
14 root root
4096 Nov 6 00:04 ..
(上面的第3行中的2代表当前目录中有子目录2个,即.和..
上面的第4行中的14代表这个目录的上一层目录中有14个子目录。)

再接下来的root代表这个文件(目录)的属主为
用户root
再接下来的root代表这个文件(目录)所属的用户组为
组root
4096
代表文件的大小(字节数),目录的大小总是为4096字节。
Nov
6 00:04 代表文件(目录)的修改时间。
aa代表文件(目录)在名字。

3)文件名颜色的含义

默认色代表普通文件。
例:install.log

绿色代表可执行文件。
例:rc.news

红色代表tar包文件。 例:vim-7.1.tar.bz2

蓝色代表目录文件。
例:aa

水红代表图象文件。
例:Sunset.jpg

青色代表链接文件。
例:rc4.d
(此类文件相当于快捷方式)

黄色代表设备文件。
例:fd0

4)几个比较常用的参数。

-t 按最后修改时间排序。

-S 按文件大小排序。(大写的S)

-r 排序时按倒序。

-h 显示文件大小时增加可读性
(例:1K 234M 2G)

如果这个aa是个普通文件,2就代表这个文件有2个别名(这个文件被人创建了一个硬链接文件)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: