ls命令用于列出文件和目录。默认上,会列出当前目录的内容。带上参数后,我们可以用ls做更多的事情。
1.不带参数运行ls会只列出文件或者目录
[root@one ~]# ls anaconda-ks.cfg install.log install.log.syslog shell
2. ls -l (小写L) 列出文件详细信息
[root@one ~]# ls -l 总用量 40 -rw-------. 1 root root 1019 1月 20 22:44 anaconda-ks.cfg -rw-r--r--. 1 root root 20412 1月 20 22:43 install.log -rw-r--r--. 1 root root 6082 1月 20 22:42 install.log.syslog drwxr-xr-x. 2 root root 4096 1月 26 19:29 shell [root@one ~]#
第一列:drwxr-xr-x的第一个字符:“d”表示目录、“-”表示普通文件、“l”表示链接文件,“b”表示设置文件。后面的九个字符每三个为一组,分别表示文件所有者、文件所有者所在用户组、其他用户对文件的权限。rwx表示可读、可写、可执行。
第二列:表示有多少链接指向这个文件。
第三列:文件的所有者(属主)
第四列:文件的所有组(属组)
第五列:该文件的大小,以字节为单位。
第六列:该文件最后的修改时间。
第七列:文件名或目录名
3. ls -a 查看该目录下所有的文件,包括隐藏文件。
[root@one ~]# ls -a . .bash_history .bashrc install.log.syslog .tcshrc .. .bash_logout .cshrc shell .viminfo anaconda-ks.cfg .bash_profile install.log .ssh [root@one ~]#
4. ls -d 只查看目录。
通常和和-l搭配使用,ls -ld查看该目录本身的信息。
[root@one ~]# ls -ld .ssh/ drwx------. 2 root root 4096 1月 23 00:29 .ssh/
5.ls -t 按修改时间排序,最新的文件在最上面
通常和和-l搭配使。也可查看指定目录。
[root@one ~]# ls -lt /tmp/ 总用量 8 srwxrwxrwx 1 mysql mysql 0 2月 22 21:28 mysql.sock srw-rw-rw- 1 root root 0 2月 22 21:28 php-fcgi.sock drwxr-xr-x. 3 root root 4096 1月 24 02:29 pear -rw-r--r--. 1 root root 5 1月 23 00:48 12.txt -rw-------. 1 root root 0 1月 20 22:34 yum.log
6.ls -i 可以查看文件的inode号。
[root@one ~]# ls -i 787663 anaconda-ks.cfg 783364 install.log.syslog 783363 install.log 787665 shell
7.ls -lh 用“K、M、G”显示文件或目录的大小
[root@one ~]# ls -lh /usr/ 总用量 108K dr-xr-xr-x. 2 root root 28K 1月 29 23:53 bin drwxr-xr-x. 2 root root 4.0K 9月 23 2011 etc drwxr-xr-x. 2 root root 4.0K 9月 23 2011 games drwxr-xr-x. 49 root root 4.0K 1月 24 02:06 include dr-xr-xr-x. 52 root root 32K 1月 29 23:08 lib drwxr-xr-x. 14 root root 4.0K 1月 24 01:11 libexec drwxr-xr-x. 16 root root 4.0K 1月 24 03:01 local dr-xr-xr-x. 2 root root 12K 1月 24 02:05 sbin drwxr-xr-x. 97 root root 4.0K 1月 24 02:06 share drwxr-xr-x. 4 root root 4.0K 1月 20 22:36 src lrwxrwxrwx. 1 root root 10 1月 20 22:36 tmp -> ../var/tmp
8.ls -R 列出目录以及其子目录
[root@one ~]# ls -R .: anaconda-ks.cfg install.log install.log.syslog shell ./shell: 1212.txt 2.expect 4.expect lanmp.sh 1.expect 3.expect 5.expect test.expect
9. ls -r 排序时反转顺序
[root@one ~]# ls anaconda-ks.cfg install.log install.log.syslog shell [root@one ~]# ls -r shell install.log.syslog install.log anaconda-ks.cfg