0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

浅谈Linux中ls 命令(20 个实用范例分析)

马哥Linux运维 作者:工程师3 2018-05-28 16:03 次阅读

Linux中一个基本命令是ls。没有这个命令,我们会在浏览目录条目时会遇到困难。这个命令必须被每个学习Linux的人知道。

ls是什么

ls命令用于列出文件和目录。默认上,他会列出当前目录的内容。带上参数后,我们可以用ls做更多的事情。这里是一些在日常操作中使用到的ls用法的示例。

1. 不带参数运行ls

不带参数运行ls会只列出文件或者目录。看不到其他信息输出(译注:有时候你发现无参数的ls命令和这里描述的不同,那有可能是你的ls命令实际上带参数的ls别名)。

$ ls

浅谈Linux中ls 命令(20 个实用范例分析)

2. 使用长清单模式

使用-l字符(小写L字符),会显示当前目录内容的长列表。在接下来的例子中,我们会结合-l参数(这个参数经常使用)来得到更好的结果。

$ ls -l

浅谈Linux中ls 命令(20 个实用范例分析)

这里是如何读取输出 :

  • 第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

浅谈Linux中ls 命令(20 个实用范例分析)

另外一个可以这么做的参数是–si。这个参数和-h参数类似,但是-si以1000为单位,而-h以1024为单位。

$ ls -si

浅谈Linux中ls 命令(20 个实用范例分析)

4. 排序文件大小

在我们可以显示文件大小之后,我们希望以文件大小排序。我们可以使用-S参数来这么做。这列表会从大到校排序。

$ ls -lhS

浅谈Linux中ls 命令(20 个实用范例分析)

5. 测量大小

ls可以通过使用-block-size=SIZE改单位大小。这里的SIZE是:

K = Kilobyte

M = Megabyte

G = Gigabyte

T = Terabyte

P = Petabyte

E = Exabyte

Z = Zettabyte

Y = Yottabyte

比如,我们希望使用MB作为单位大小。所以语法就会像这样:

$ ls -l –block-size=M

浅谈Linux中ls 命令(20 个实用范例分析)

6. 显示隐藏文件

在Linux中,以”.”(点号)开头的文件是隐藏文件。为了在ls命令中显示它,我们可以使用-a选项。

$ ls -a

浅谈Linux中ls 命令(20 个实用范例分析)

7. 只列出目录条目

如果我们希望只列出目录,我们可以使用-d选项。

$ ls -d */

pIYBAFsLuI2ADFIpAABJgAmloPk710.png

8. 不打印所有者信息

要这么做,我们使用-g选项。

$ ls -g

浅谈Linux中ls 命令(20 个实用范例分析)

9. 不打印组信息

-g隐藏了拥有者信息,—G会隐藏组信息。

$ ls -lG

浅谈Linux中ls 命令(20 个实用范例分析)

10. 打印UID和GID

如果你想以数字方式列出项的所有者和所有组(即UID和GID),我们可以带-n选项使用ls命令。这里是个例子。

$ ls -n

pIYBAFsLuI6APFk6AABzMjWSc_k157.png

从上面的例子中,我们知道用户pungki的UID是100,GID是1000,而root组的GID是0。

11. 不带颜色打印

一些Linux发行版已经对ls命令启用彩色。这会使ls以各种颜色打印列表。如果你不想要这样,你可以使用–color=never参数。

$ ls –color=never

pIYBAFsLuI6AOoN9AACkqaRPKDI278.png

12. 打印每个文件的索引

为了打印索引或者大家俗称的inode号,我们可以使用-i选项。索引号会显示在第一列。

$ ls -li

浅谈Linux中ls 命令(20 个实用范例分析)

13. 增加 / (斜线) 标记目录

要这么做,使用-p选项。

$ ls -p

pIYBAFsLuI6AT09uAACiZvQgDfw270.png

14. 排序时反转顺序

你或许需要在列出条目时反转顺序。要这么做,你可以使用-r选项。

$ ls -r

pIYBAFsLuI-AHJCMAACgz31as4k281.png

15. 递归列出子目录

带-R参数后,你可以列出包含它子目录的目录。

$ ls -R

pIYBAFsLuI-AagLRAADsrVD48xU854.png

16. 扩展名排序

你可以使用-X参数或者–sort=extension来通过扩展名来排序(译注:这样对于筛选不同类型的文件很有用)。

$ ls -lX

$ ls –sort=extension

pIYBAFsLuI-AbYJVAACxrkKIdaw478.png

17. 通过修改时间列出

使用-t选项会按修改时间排序,新的文件在前。

$ ls -lt

pIYBAFsLuI-AQ33JAACzBvws8s4466.png

18. 列出你的主目录

要列出你的主目录,你可以用”~”(波浪号)来代表它。这样你就不必输入完整的目录名。让我们假设家文件名为/home/pungki,那么波浪号就对/home/pungki有意义了。

$ ls ~

浅谈Linux中ls 命令(20 个实用范例分析)

19. 列出父目录

无论你在那个目录,你可以列出父目录而不必输入完整路径。这是个例子。

$ ls ../

这回列出1层之上的目录内容。

$ ls ../../

这回列出2层之上的目录内容(译注:可不支持“…”来代表2层之上)。

20. 打印ls命令版本

使用–version参数打印它。

$ ls –version

浅谈Linux中ls 命令(20 个实用范例分析)

总结

这些是在日常操作中会使用到的参数。当然你总可以输入man ls或者ls –help来查询ls的手册页。


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Linux
    +关注

    关注

    87

    文章

    10981

    浏览量

    206687

原文标题:ls 命令还能这么玩?看一下这 20 个实用范例

文章出处:【微信号:magedu-Linux,微信公众号:马哥Linux运维】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    Linuxls-lrt命令的作用

    作为软件开发人员或测试人员,我们经常会使用“ls-lrt”命令,特别是在处理大量文件的时候。
    发表于 11-25 16:27 1917次阅读
    <b class='flag-5'>Linux</b>中<b class='flag-5'>ls</b>-lrt<b class='flag-5'>命令</b>的作用

    Linux入门命令详解

    、-h等常用选项。 在后面的视频,也是先介绍Linux基础命令(pwd、cd、ls等)的常用选项。 入门阶段,掌握一些常用的选项就可以了,不要贪多。004节_
    发表于 03-09 10:14

    面试linux常见的20命令

    vi20.查看系统当前时间date命令会输出 周几 几月 几日 时间 和 时间显示格式 和年份Sat Jan 20 04:39:49 CST 2018date +"%Y-%m-%d"
    发表于 07-04 07:54

    零基础学习之Linux基础命令小结

    是当前用户的宿目录,最后的#号代表是提示符,一般在linuxroot的命令提示符是#,普通用户的命令提示符是$,同时命令提示符可以判断当前
    发表于 09-20 10:52

    20常用Linux命令

    20常用Linux命令 今天总结几个非常常用的Linux命令,其中有几个在面试
    发表于 05-11 15:46

    树莓派入门必会的20Linux命令

    的尤物了。Linux天生就是要使用CLI(command-line interface,命令行界面)操作的,因此学习树莓派就必须要会用Linux命令,本文介绍
    发表于 08-24 10:00

    ls命令是什么?有何作用

    1、ls命令就是 list 的缩写,通过 ls 命令不仅可以查看 linux 文件夹包含的文件,而且可以查看文件权限(包括目录、文件夹、文件
    发表于 02-17 07:05

    Linux服务器性能测试及分析命令大全

    Linux服务器性能测试及分析命令大全
    发表于 09-05 15:42 12次下载
    <b class='flag-5'>Linux</b>服务器性能测试及<b class='flag-5'>分析</b><b class='flag-5'>命令</b>大全

    Linux中的LS命令详细学习资料概述

    ls 命令可以列出一个 POSIX 系统上的文件。这是一个简单的命令,但它经常被低估,不是它能做什么(因为它确实只做了一件事),而是你该如何优化对它的使用。
    的头像 发表于 08-11 10:55 3017次阅读

    linux命令无法使用怎么办

    linux命令无法使用是怎么回事?问题分析
    发表于 05-28 09:02 1719次阅读
    <b class='flag-5'>linux</b>中<b class='flag-5'>命令</b>无法使用怎么办

    总结20个超好用的 Unix/Linux 命令指令集

    总结20个超好用的 Unix/Linux 命令指令集
    的头像 发表于 10-16 15:20 2706次阅读

    用Golang编写的Linux ls命令替代方案

    ls命令有多种替代方法,我们今后也将介绍其中的一些替代方法。
    的头像 发表于 05-17 14:02 1232次阅读

    一款运行于windows上的linux命令神器-Cmder

    Cmder是一款Windows的命令行工具,用起来和Linux命令一样顺畅。可以使用大量的Linux 命令,比如 grep, curl,v
    的头像 发表于 05-05 10:30 1597次阅读
    一款运行于windows上的<b class='flag-5'>linux</b><b class='flag-5'>命令</b>神器-Cmder

    ls是什么?ls命令可不简单!

    Linux中一个基本命令ls。没有这个命令,我们会在浏览目录条目时会遇到困难。这个命令必须被每个学习L
    的头像 发表于 07-21 09:23 3012次阅读
    <b class='flag-5'>ls</b>是什么?<b class='flag-5'>ls</b><b class='flag-5'>命令</b>可不简单!

    shell命令linux命令一样吗

    Shell命令Linux命令并不完全一样。 首先,Shell是一种命令行解释器,它是用来解释和执行用户输入的命令的。Shell既是一种
    的头像 发表于 11-08 10:51 1309次阅读