ls命令是linux下最常用的命令。ls命令就是list的缩写�缺省下ls用来打印出当前目录的清单�如果ls指定其他目录�那么就会显示指定目录里的文件及文件夹清单。 通过ls 命令不仅可以查看linux文件夹包含的文件�而且可以查看文件权限(包括目录、文件夹、文件权限)�查看目录信息等等。ls 命令在日常的linux操作中用的很多!
常用参数
-a:显示所有文件,包括隐藏文件(以.开头的文件)
-l:列出文件详细信息如属性与权限信息 可用别名命令 ll
-t:按修改时间先后显示
-R:显示目录及下级子目录结构(递归)
-m: 横向输出文件名,并以“,”作分格符。
-S: 以文件大小排序。
常用范例
# 按文件修改时间 从新到旧
[root@localhost ~]# ls -lt
total 58200
-rw-r--r-- 1 root root 448 Sep 4 14:33 test
drwxr-xr-x 3 root root 20 Aug 29 18:52 home
drwxr-xr-x 2 root root 97 Aug 26 20:21 crond
-rw-r--r-- 1 root root 57 Aug 25 12:50 sort.txt
第一个栏位,表示文件的属性。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显示隐藏的文件名。
# 支持通配符
ls -l *.txt
# 有微秒的显示文件
ls -l --full-time
# 连文件的id都显示出来
ls -li
# 以容易识别的单位显示如GB/MB/KB
ls -lh
# 按文件大小排序 从大到小
ls -lSh
# 按文件大小排序 从小到大
ls -lShr
ls -lc filename # 列出文件的 ctime (ls -l --time=ctime)
ls -lu filename # 列出文件的 atime (ls -l --time=atime)
ls -l filename # 列出文件的 mtime (ls -l --time=mtime)