Linux 中的 ls 命令使用教程

图片

目录

前言

如何运用 ls 命令

1、列出带有所有权的文件和目录

2、获取以人类可读的方式显示的信息

3、列出隐藏文件

4、递归列出文件

5、在使用 ls 时对文件和目录做区分

6、列出指定扩展名的文件

7、基于大小对输出内容排序

8、根据日期和时间排序文件

让我们来总结一下至此你已经学习到的!


前言

ls 属于 Linux 中那些简单又常用的命令之一。在本教程里,你将学到如何高效使用它。

对我个人而言,ls 无疑是 最常被使用的 Linux 命令itsfoss.com,因为我们总是借助它 列出目录内的内容itsfoss.com 来检验上一步操作的结果。

ls 命令是 “列表(List)” 的缩写,其功能就是列出你指定目录下的所有内容。

我将在本教程中,通过一系列的实例,带你一步步掌握 ls 命令的使用。

另外也会给出一些练习题,以检验你的学习成果。

如何运用 ls 命令

要使用 ls 命令,你只需遵循以下简单的命令格式:

ls [OPTIONS] Targeted_Directory

这里,

◈ [OPTIONS]:用来改变 ls 命令的默认行为。

◈ Targeted_Directory:在这里输入目录名或目录的绝对路径。

你可能会想,如果没有任何选项地使用 ls 命令会发生什么。为了回答这个问题,我在当前工作目录中使用了 ls 命令:

图片

使用 ls 命令列出工作目录的内容

如你所见,它列出了当前工作目录中所有可用的目录和文件。但你可以做的远不止于在当前工作目录中获取名称和文件。

接下来让我给你展示一下。

1、列出带有所有权的文件和目录

ls 命令的重要用途之一就是查出具体的文件或目录的权限以及所有权信息。

这就需要你在使用 ls 命令时,带上 -l 选项(这也被称为长列表格式):

ls -l

执行该命令后,你会看到类似的输出:

$ ls -lh
-rwxrw-r-- 1 sagar sagar 666M Dec 10 18:16 Fedora.iso

注意到我是同时使用了 –h 选项吗?我们稍后会详细说明这个。

如果目前为止的输出结果看起来太复杂,那就让我来帮你简化一下:

图片

利用 ls 命令在 Linux 中解读文件权限和所有权

如你所见,每个文本块都有特定的含义,它们分别对应文件拥有者、组和其他用户的各项权限。

对于想对文件权限有更深入理解的朋友,我推荐你阅读 我们关于 Linux 文件权限的详尽指南linuxhandbook.com:443。

2、获取以人类可读的方式显示的信息

默认状态下,文件大小以字节为单位显示,显然不是最佳的查阅方式。那如果想以更易读的方式来得知相同的信息,我们怎么做呢?

其实很简单。你只需使用 -h 选项与 ls 命令配合:

ls -l -h

接下来,我们比较下默认显示状态和可读性更强的显示方式的区别:

图片

以人类可读的方式通过 ls 命令列出文件

明显更好了,对吧?

💡 尽管 ls 命令很好地展示了文件大小,但它并不能告诉你文件夹的大小,普遍情况都会显示为 4K(LCTT 译注:这其实是“目录”这个文件所占用的大小,而不是该目录下文件的总计大小。)。如果需要了解文件夹的大小,那么你可以尝试使用 du 命令。

3、列出隐藏文件

和其他所有文件管理器一样,ls 命令在默认情况下并不会显示隐藏文件(这正是隐藏文件的意义所在,对吧?)。

那么,如果你期望在常规文件之外,一并 列出隐藏文件itsfoss.com 呢?只需在使用 ls 命令时带上 -a 选项就行:

ls -a

你会注意到,以 . 开头的文件名就是所谓的隐藏文件。

图片

用 ls 命令在 Linux 终端列出隐藏文件

💡 你还可以使用 ls -A,它的功能与 ls -a 类似,但它不包括 . 和 .. 这两个目录。

4、递归列出文件

事实上,有 多种方法可以递归列出文件linuxhandbook.com:443,使用 ls 命令就是其中之一。

如果你还不清楚,递归列出文件就是指展示所有子目录中的文件,直到每个子目录的最深层次。

你可以通过使用 -R 参数来递归列出文件:

ls -R

图片

在 Linux 中使用 ls 命令递归列出文件

这种方式实际上为你展示了当前目录的结构,我个人非常喜欢这种方式,但你需要先进行安装。

💡 其实你并不需要进入某个目录才能查看其内容,你可以直接通过提供它的绝对路径或相对路径来列出目录内容,比如:ls /var/log

5、在使用 ls 时对文件和目录做区分

通常,不同的颜色就足以区分文件和目录。但是如果你基于某种原因需要给文件和目录添加符号标识,这就有一个办法。

在 ls 命令中,使用 -F 选项,它会在每个目录名末尾添加一个正斜杠 /

ls -F

图片

使用 ls 命令在文件和目录间做区分

6、列出指定扩展名的文件

有些情况下,你可能只希望列出具有特定扩展名的文件,实际上,这是最简单的操作之一。

做到这一点,你无需使用任何选项。只需在星号 * 后附上文件扩展名,如 *.png*.txt 等:

ls *.extension

例如,如果我只想列出 ISO 文件,那么我将使用以下命令:

ls *.iso

图片

列出特定扩展名的文件

7、基于大小对输出内容排序

若希望基于文件大小来对输出内容排序,你需要使用 -S 选项,它会以从大到小的方式(降序)列出文件:

ls -lhS

图片

使用 ls 命令基于文件大小排序

相反,如果你想颠倒这个顺序,使得最小的文件首先被列出,你可以利用 -r 选项来实现反向排序:

ls -lhSr

图片

使用 ls 命令从小到大排序文件

8、根据日期和时间排序文件

ls 命令在列出的内容中包括文件的修改时间。

如果你希望最新的文件最先被列出,可以使用 -t 选项,如下所示:

ls -lht

图片

使用 ls 命令最先列出最新文件

你也可以像我前面提到的那样,在这里使用 -r 选项进行反转排序。

ls -lrt

这会使得最近修改的文件在列表的底部显示,当目录中存在大量文件,而你希望查看最近被修改过的文件时,这一命令会特别有用。我在解决我的软件项目问题时就经常用到它。

图片

使用 ls -lrt 命令

让我们来总结一下至此你已经学习到的!

下面,我会共享一个表列出本教程中介绍过的一些与 ls 命令一起使用的选项:

< 如显示不全,请左右滑动 >

命令描述
ls -l长格式列出文件和目录
ls -lh以人类可读的方式显示信息
ls -a在列出的内容中包括隐藏文件
ls -R递归列出文件
ls -F在目录名后添加正斜杠
ls *.ext列出具有特定扩展名的文件
ls -lS根据文件大小排序
ls -lt根据修改时间排序
-r反转排序顺序(与 -S 或 -t 结合使用)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/178648.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

从零带你底层实现unordered_map (2)

&#x1f4af; 博客内容&#xff1a;从零带你实现unordered_map &#x1f600; 作  者&#xff1a;陈大大陈 &#x1f680; 个人简介&#xff1a;一个正在努力学技术的准C后端工程师&#xff0c;专注基础和实战分享 &#xff0c;欢迎私信&#xff01; &#x1f496; 欢迎大家…

figma 基础使用 —— 常用方法

一、 导入组件 分成两种方式 &#xff08;1&#xff09;离线的包导入&#xff08;iOS 常用组件.fig 直接拖拽到figma最近网页&#xff09; &#xff08;2&#xff09;在插件市场下载https://www.figma.com/community 二、figma中使用标尺 快捷键&#xff1a;shift R 三、插…

宿主Linux——KVM安装Windows7系统

KVM虚拟技术 KVM(Kernel-based Virtual Machine) 是基于Linux内核的开源虚拟化技术&#xff0c;在一台物理机上可同时运行多个虚拟系统。KVM使用硬件虚拟化扩展&#xff0c;例如Intel的VT和AMD的AMD-V&#xff0c;在性能方面更加高效&#xff0c;可提供更好的计算能力和响应速…

【从浅识到熟知Linux】基本指令之rmdir和rm

&#x1f388;归属专栏&#xff1a;从浅学到熟知Linux &#x1f697;个人主页&#xff1a;Jammingpro &#x1f41f;每日一句&#xff1a;加油努力&#xff0c;这次写完真的真的真的要去干饭了&#xff01; 文章前言&#xff1a;本文介绍rmdir和rm指令用法并给出示例和截图。 文…

存在即合理,低代码的探索之路

目录 一、前言 二、低代码迅速流行的原因 三、稳定性和生产率的最佳实践 四、程序员用低代码开发应用有哪些益处&#xff1f; 1、提升开发价值 2、利于团队升级 一、前言 低代码的热潮至今未消停&#xff0c;从阿里钉钉跨平台协作方式&#xff0c;再到飞书上的审批流程&#xf…

房屋租赁出售经纪人入驻小程序平台

一款专为房屋中介开发的小程序平台&#xff0c;支持独立部署&#xff0c;源码交付&#xff0c;数据安全无忧。 核心功能&#xff1a;房屋出租、经纪人独立后台、分佣后台、楼盘展示、房型展示、在线咨询、地址位置配套设施展示。 程序已被很多房屋交易中介体验使用过&#x…

uni-app 离线打包安卓Apk(小白上手)

场景&#xff1a; 在使用uni-app 开发apk时&#xff0c;使用云打包有次数限制。尤其对于测试阶段是无比难受的&#xff0c;通常是浪费打包次数进行打包或者通过usb 给测试机更新开发环境&#xff0c;但这都是无比漫长的过程 尤其有多个测试机真的是噩梦般的存在 下载离线打包示…

【数据库】聊聊一颗B+树 可以存储多少数据

我们知道数据库使用的数据结构是B树&#xff0c;但是B树可以存储多少数据呢&#xff0c;在面试中也是经常会问的问题&#xff0c;所以我们从根上理解这个问题。 操作系统层面 数据都是存储在磁盘中的&#xff0c;而磁盘中的数据都是以最新单位扇区进行分割。一个扇区的大小是…

Python基础语法之学习数据转换

Python基础语法之学习数据转换 一、代码二、效果 一、代码 #数字转换成字符串 num_str str(11) print(type(num_str))#字符串转整数 numint("11") print(type(num),num)#浮点数转整数 float_num int(11.1) print(type(float_num),float_num)#整数转浮点数 num_flo…

OpenSSL 使用AES对文件加解密

AES&#xff08;Advanced Encryption Standard&#xff09;是一种对称加密算法&#xff0c;它是目前广泛使用的加密算法之一。AES算法是由美国国家标准与技术研究院&#xff08;NIST&#xff09;于2001年发布的&#xff0c;它取代了原先的DES&#xff08;Data Encryption Stand…

webpack项目工程初始化

一、初始化项目 默认系统已经安装node //初始化 pnpm init//安装webpack pnpm i -D webpack webpack-cli 新建一个index.html的入口文件 新建一个src文件存放js代码&#xff0c;src里面新建一个index.js package.josn配置打包命令 {"name": "webpack-cs&q…

Linux下基于MPI的hello程序设计

Linux下基于MPI的hello程序设计 一、MPICH并行计算库安装实验环境部署创建SSH信任连接&#xff0c;实现免密钥互相连接node1安装MPICH 3.4配置NFS注意(一定要先看)环境测试 二、HELLO WORLD并行程序设计 一、MPICH并行计算库安装 在Linux环境下安装MPICH执行环境&#xff0c;配…

【浅尝C++】C++类的6大默认成员函数——构造、析构及拷贝构造函数

&#x1f388;归属专栏&#xff1a;浅尝C &#x1f697;个人主页&#xff1a;Jammingpro &#x1f41f;记录一句&#xff1a;好想摆烂&#xff0c;又好想学习~~ 文章前言&#xff1a;本篇文章简要介绍C类的构造函数、析构函数及拷贝构造函数&#xff0c;介绍每个小点时&#xf…

【Linux专题】http(s)代理

【赠送】IT技术视频教程&#xff0c;白拿不谢&#xff01;思科、华为、红帽、数据库、云计算等等_厦门微思网络的博客-CSDN博客文章浏览阅读444次。风和日丽&#xff0c;小微给你送福利~如果你是小微的老粉&#xff0c;这里有一份粉丝福利待领取...如果你是新粉关注到了小微&am…

【objectarx.net】table问题2:添加table后,保存时出错

添加table后&#xff0c;保存时出现以上对话框。 原因&#xff1a; tb.TableStyle db.Tablestyle; 对于这句代码&#xff0c;tb所在的数据库和db不是同一个。

java反射和注解3-仿照retrofit组装接口参数

本片文章将用反射和注解仿照retrofit只需要传入一个带有给定注解的接口&#xff0c;通过调用接口就能直接将传入的数据和注解进行结合&#xff0c;生成对应参数 1&#xff0c;自定义注解 对字段的修饰 Retention(RetentionPolicy.RUNTIME) Target(ElementType.PARAMETER) pu…

Win7 SP1 x64 安装 Python 出错解决方法

1 双击安装 python-3.7.9.exe &#xff0c;提示出错&#xff0c;log.file 显示需要 KB2533623&#xff0c;但在Microsoft Update Catalog 没有搜到&#xff0c;实验 KB4474419 也可以。 2 Microsoft Update Catalog 搜索 KB4474419 &#xff0c;选择 x64 位&#xff0c;下载&am…

Cache学习(4):Cache分配策略Cache更新策略Cache逐出策略

Cache的数据流 常用名词 Allocation 分配Eviction 驱逐分配策略和更新策略分别为当产生Cache miss和Cache hit的时候数据流的具体行为 1 Cache分配策略&#xff08;Cache Allocation Policy&#xff09; Cache的分配策略是指不同情况下为数据分配Cache Line的不同行为。Cac…

基本数据结构二叉树(3)

目录 4.二叉树链式结构的操作 4.1 前置说明 4.2二叉树的遍历 4.2.1 前序、中序以及后序遍历 4.3 节点个数以及高度等 4.二叉树链式结构的操作 4.1 前置说明 由于博主对二叉树的结果掌握还不够深入&#xff0c;因此在讲解相关操作前将手动创建一颗简单的二叉树&#xff0c…

金字塔原理 读书笔记

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言第1篇 表达的逻辑第1章 为什么要用金字塔结构归类分组&#xff0c;将思想组织成金字塔自上而下表达&#xff0c;结论先行自下而上思考&#xff0c;总结概括 第2…