发布时间:2014-05-22 17:05:05作者:知识屋
Linux中一个基本命令是ls。没有这个命令,我们会在浏览目录条目时会遇到困难。这个命令必须被每个学习Linux的人知道。
ls是什么ls命令用于列出文件和目录。默认上,他会列出当前目录的内容。带上参数后,我们可以用ls做更多的事情。这里是一些在日常操作中使用到的ls用法的示例。
1. 不带参数运行ls
不带参数运行ls会只列出文件或者目录。看不到其他信息输出(译注:有时候你发现无参数的ls命令和这里描述的不同,那有可能是你的ls命令实际上带参数的ls别名)。
$ ls
2. 使用长清单模式
使用-l字符(小写L字符),会显示当前目录内容的长列表。在接下来的例子中,我们会结合-l参数(这个参数经常使用)来得到更好的结果。
$ ls -l
这里是如何读取输出 :
第1列
第一个字母 d 意味着内容是目录或者文件。在上面的截图中,Desktop、 Documents、 Downloads 和 lynis-1.3.8是目录。如果是'-'( 减号 ),这意味着它的内容是文件。当它是l( 小写l字符 ),意味这内容是链接文件。 下面的9个字符是关于文件权限。 前3个rwx 字符是文件的拥有者的权限, 第二组3rwx 是文件的所有组的权限, 最后的rwx 是对其他人访问文件的权限。第2列 这行告诉我们有多少链接指向这个文件。
第3列 这行告诉我们谁是这个文件/文件夹的所有者。
第4列 这行告诉我们谁是这个文件/文件夹的所有组。
第5列 这行告诉我们这个文件/文件夹的以字节为单位的大小。 目录的大小总是4096字节。
第6列 这告诉我们文件最后的修改时间。
第7列 这告诉我们文件名或者目录名。
3. 显示文件大小以字节为单位看大小可能会不方便。6.5M读起来比6727680字节更简单。要这么做,我们可以使用-h与 -l 结合的参数。 -h参数意味着便于人识别 。
$ ls -lh
另外一个可以这么做的参数是 --si 。这个参数和-h参数类似,但是 -si以1000为单位,而-h以1024为单位 。
$ ls -si
4. 排序文件大小
在我们可以显示文件大小之后,我们希望以文件大小排序。我们可以使用-S参数来这么做。这列表会从大到校排序。
$ ls -lhS
5. 测量大小
ls可以通过使用 -block-size=SIZE 改单位大小。这里的SIZE是:
K = KilobyteM = MegabyteG = GigabyteT = TerabyteP = PetabyteE = ExabyteZ = ZettabyteY = Yottabyte
比如,我们希望使用MB作为单位大小。所以语法就会像这样:
$ ls -l --block-size=M
6. 显示隐藏文件
在Linux中,以"."( 点号 )开头的文件是隐藏文件。为了在ls命令中显示它,我们可以使用 -a 选项。
$ ls -a
7. 只列出目录条目
如果我们希望只列出目录,我们可以使用 -d 选项。
$ ls -d */
8. 不打印所有者信息
要这么做,我们使用 -g 选项。
$ ls -g
9. 不打印组信息
-g隐藏了拥有者信息, —G 会隐藏组信息。
$ ls -lG
10. 打印UID和GID
如果你想以数字方式列出项的所有者和所有组(即UID和GID),我们可以带 -n 选项使用ls命令。这里是个例子。
$ ls -n
从上面的例子中,我们知道 用户pungki的UID 是100, GID是1000 ,而 root组的GID是0 。
11. 不带颜色打印一些Linux发行版已经对ls命令启用彩色。这会使ls以各种颜色打印列表。如果你不想要这样,你可以使用 --color=never 参数。
$ ls --color=never
12. 打印每个文件的索引号
为了打印索引或者大家俗称的inode号,我们可以使用-i选项。索引号会显示在第一列。
$ ls -li
13. 增加 / (斜线) 标记目录
要这么做,使用 -p选项 。
$ ls -p
14. 排序时反转顺序
你或许需要在列出条目时反转顺序。要这么做,你可以使用 -r 选项。
$ ls -r
15. 递归列出子目录
带 -R 参数后,你可以列出包含它子目录的目录。
$ ls -R
16. 扩展名排序
你可以使用-X参数或者--sort=extension来通过扩展名来排序(译注:这样对于筛选不同类型的文件很有用)。
$ ls -lX
或
17. 通过修改时间列出
使用-t选项会按修改时间排序,新的文件在前。
$ ls -lt
18. 列出你的主目录
要列出你的主目录,你可以用"~"( 波浪号 )来代表它。这样你就不必输入完整的目录名。让我们假设家文件名为 /home/pungki ,那么 波浪号 就对/home/pungki有意义了。
$ ls ~
19. 列出父目录
无论你在那个目录,你可以列出父目录而不必输入完整路径。这是个例子。
$ ls ../
这回列出 1 层之上的目录内容。
$ ls ../../
这回列出 2 层之上的目录内容(译注:可不支持“...”来代表2层之上)。
20. 打印ls命令版本
使用--version参数打印它。
$ ls --version
总结
这些是在日常操作中会使用到的参数。当然你总可以输入 man ls 或者 ls --help 来查询ls的手册页
via:
译者: 校对:
本文由 原创翻译,Linux中国荣誉推出
linux一键安装web环境全攻略 在linux系统中怎么一键安装web环境方法
Linux网络基本网络配置方法介绍 如何配置Linux系统的网络方法
Linux下DNS服务器搭建详解 Linux下搭建DNS服务器和配置文件
对Linux进行详细的性能监控的方法 Linux 系统性能监控命令详解
linux系统root密码忘了怎么办 linux忘记root密码后找回密码的方法
Linux基本命令有哪些 Linux系统常用操作命令有哪些
Linux必学的网络操作命令 linux网络操作相关命令汇总
linux系统从入侵到提权的详细过程 linux入侵提权服务器方法技巧
linux系统怎么用命令切换用户登录 Linux切换用户的命令是什么
在linux中添加普通新用户登录 如何在Linux中添加一个新的用户
2012-07-10
CentOS 6.3安装(详细图解教程)
Linux怎么查看网卡驱动?Linux下查看网卡的驱动程序
centos修改主机名命令
Ubuntu或UbuntuKyKin14.04Unity桌面风格与Gnome桌面风格的切换
FEDORA 17中设置TIGERVNC远程访问
StartOS 5.0相关介绍,新型的Linux系统!
解决vSphere Client登录linux版vCenter失败
LINUX最新提权 Exploits Linux Kernel <= 2.6.37
nginx在网站中的7层转发功能