linux ll ls 详解

  • Post author:
  • Post category:linux




ll 命令列出的信息更加详细,有时间,是否可读写等信息

ll命令和ls -l命令结果区别:

上面结果说明:


各个字段的含义:

文件属性 文件数 拥有者 所属的group 文件大小 建档日期 文件名

drwx—— 2 Guest users 1024 Nov 21 21:05 Mail

-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的文件基本上分为三个属性:可读(r),可写(w),可执行(x)。但是这里有十个格子可以添(具体程序实现时,实际上是十个bit位)。第一个小格是特殊表示格,表示目录或连结文件等等,d表示目录,例如drwx——;l表示连结文件,如lrwxrwxrwx;如果是以一横“-”表示,则表示这是文件。其余剩下的格子就以每3格为一个单位。因为Linux是多用户多任务系统,所以一个文件可能同时被许多人使用,所以我们一定要设好每个文件的权限,其文件的权限位置排列顺序是(以-rwxr-xr-x为例):

rwx(Owner)r-x(Group)r-x(Other)

这个例子表示的权限是:使用者自己可读,可写,可执行;同一组的用户可读,不可写,可执行;其它用户可读,不可写,可执行。另外,有一些程序属性的执行部分不是X,而是S,这表示执行这个程序的使用者,临时可以有和拥有者一样权力的身份来执行该程序。一般出现在系统管理之类的指令或程序,让使用者执行时,拥有root身份。

第二个栏位,表示文件个数。如果是文件的话,那这个数目自然是1了,如果是目录的话,那它的数目就是该目录中的文件个数了。

第三个栏位,表示该文件或目录的拥有者。若使用者目前处于自己的Home,那这一栏大概都是它的账号名称。

第四个栏位,表示所属的组(group)。每一个使用者都可以拥有一个以上的组,不过大部分的使用者应该都只属于一个组,只有当系统管理员希望给予某使用者特殊权限时,才可能会给他另一个组。

第五栏位,表示文件大小。文件大小用byte来表示,而空目录一般都是1024byte,你当然可以用其它参数使文件显示的单位不同,如使用ls –k就是用kb莱显示一个文件的大小单位,不过一般我们还是以byte为主。

第六个栏位,表示创建日期。以“月,日,时间”的格式表示,如Aug 15 5:46表示8月15日早上5:46分。

第七个栏位,表示文件名。我们可以用ls –a显示隐藏的文件名。


ll会列出该文件下的所有文件信息,包括隐藏的文件,而ls -l只列出显式文件,说明这两个命令还是不等同的!

ls 只列出文件名或目录名

列表

ll -t 是降序, ll -t | tac 是升序

ll不是命令,是ls -l的别名



ls 命令可以说是linux下最常用的命令之一。

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

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

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

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

-i 输出文件的 i 节点的索引信息。

-l 列出文件的详细信息。

-m 横向输出文件名,并以“,”作分格符。

-n 用数字的 UID,GID 代替名称。

-o 显示文件的除组信息外的详细信息。

-p -F 在每个文件名后附上一个字符以说明该文件的类型,“*”表示可执行的普通

文件;“/”表示目录;“@”表示符号链接;“|”表示FIFOs;“=”表示套

接字(sockets)。

-q 用?代替不可输出的字符。

-r 对目录反向排序。

-s 在每个文件名后输出该文件的大小。

-t 以时间排序。

说明以最近修改的日期进行排序!

 -u 以文件上次被访问的时间排序。

-A 显示除 “.”和“..”外的所有文件。

-B 不输出以 “~”结尾的备份文件。

-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