ls 命令还能这么玩?看一下这 20 个实用范例

ls 命令还能这么玩?看一下这 20 个实用范例

https://mp.weixin.qq.com/s/UTlLQ8dVKSU-FAxS0IQ_Tw

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

 

ls是什么

 

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

 

ls 命令还能这么玩?看一下这 20 个实用范例

 

1. 不带参数运行ls

 

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

 

$ ls

ls 命令还能这么玩?看一下这 20 个实用范例

2. 使用长清单模式

 

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

 

$ ls -l

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

ls 命令还能这么玩?看一下这 20 个实用范例

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

 

$ ls -si

ls 命令还能这么玩?看一下这 20 个实用范例

 

4. 排序文件大小

 

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

 

$ ls -lhS

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

ls 命令还能这么玩?看一下这 20 个实用范例

6. 显示隐藏文件

 

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

 

$ ls -a

 ls 命令还能这么玩?看一下这 20 个实用范例

7. 只列出目录条目

 

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

 

$ ls -d */

ls 命令还能这么玩?看一下这 20 个实用范例

8. 不打印所有者信息

 

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

 

$ ls -g

 ls 命令还能这么玩?看一下这 20 个实用范例

9. 不打印组信息

 

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

 

$ ls -lG

ls 命令还能这么玩?看一下这 20 个实用范例

10. 打印UID和GID

 

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

 

$ ls -n

ls 命令还能这么玩?看一下这 20 个实用范例

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

 

11. 不带颜色打印

 

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

 

$ ls –color=never

ls 命令还能这么玩?看一下这 20 个实用范例

12. 打印每个文件的索引号

 

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

 

$ ls -li

 ls 命令还能这么玩?看一下这 20 个实用范例

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

 

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

 

$ ls -p

ls 命令还能这么玩?看一下这 20 个实用范例

14. 排序时反转顺序

 

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

 

$ ls -r

ls 命令还能这么玩?看一下这 20 个实用范例

15. 递归列出子目录

 

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

 

$ ls -R

ls 命令还能这么玩?看一下这 20 个实用范例

16. 扩展名排序

 

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

 

$ ls -lX

 

 

$ ls –sort=extension

 ls 命令还能这么玩?看一下这 20 个实用范例

17. 通过修改时间列出

 

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

 

$ ls -lt

ls 命令还能这么玩?看一下这 20 个实用范例

18. 列出你的主目录

 

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

 

$ ls ~

ls 命令还能这么玩?看一下这 20 个实用范例

19. 列出父目录

 

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

 

$ ls ../

 

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

 

$ ls ../../

 

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

ls 命令还能这么玩?看一下这 20 个实用范例

20. 打印ls命令版本

 

使用–version参数打印它。

 

$ ls –version

ls 命令还能这么玩?看一下这 20 个实用范例

 

总结

 

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

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/113282.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • document.cookie与request.cookie

    document.cookie与request.cookie我们知道使用express的cookie中间件,app.use(cookieParser()),这样就可以处理每一个请求的cookie。我们从客户端通过document.cookie获取到当前cookie,作为参数传入后端,在后端设置res.cookie。则之后可在req中获取未过期的cookie。当我们有一个请求时,就可以用res.cookie来将cookie暂时的

  • Intellij IDEA 2021 Maven 配置指南「建议收藏」

    Intellij IDEA 2021 Maven 配置指南「建议收藏」Maven是Java一个不错的项目管理工具,但在IntellijIDEA软件中配置它却并非一件省心的事情,不少小萌新会配置失败。所以,我打算分享这篇教程,帮助萌新们在IntellijIDEA中配置好Maven~

  • java运行环境_如何搭建Java运行环境?

    java运行环境_如何搭建Java运行环境?前言对于运行一个Java程序,我们首先需要有一个运行Java程序的平台程序,这个平台程序就是Java虚拟机。本篇文章将介绍如何在Windows系统上搭建一个Java程序的运行环境,主要分为两个步骤:安装JDK,配置环境变量。Windows系统Java运行环境配置下载JDK并安装首先我们需要下载java开发工具包JDK,JDK中包含了JRE(Java运行环境)和一些官方提供给我们的工具,在oracl…

  • tof相机简介及三维坐标转化,plotly画3D点云[通俗易懂]

    tof相机简介及三维坐标转化,plotly画3D点云[通俗易懂]最近在做TOF相机相关的软件,近年来tof相机开始在手机,车载设备,VR等应用开始增多,产业也开始量化,是一个不错的3维相机的方向。简单介绍一下tof相机吧:TOF是Timeofflight的简写,直译为飞行时间的意思。所谓飞行时间法3D成像,是通过给目标连续发送光脉冲,然后用传感器接收从物体返回的光,通过探测光脉冲的飞行(往返)时间来得到目标物距离。具体原理介绍参考:http://w…

  • pycharm查找替换快捷键_python查找指定字符串并替换

    pycharm查找替换快捷键_python查找指定字符串并替换快捷键ctrl+shift+r弹出如下界面上边我的dealed就是要被替换的内容,handled就是替换后的内容点击replaceinfindwindows…点击allfiles就是全部替换了

  • 微信多开(免费版)_wechat国际版

    微信多开(免费版)_wechat国际版惊喜!!!放在前面在我发布文章这一天,下午打开wechaty博客的时候发现重磅:绕过登录限制,wechaty免费版web协议重新荣光这篇文章,可以完美实现无需token即可实现微信登录效果及代

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号