Linux系统之ls命令的基本使用

news2024/9/21 22:29:33

Linux系统之ls命令的基本使用

  • 一、ls命令介绍
  • 二、ls命令的使用帮助
    • 2.1 命令格式
    • 2.2 命令选项
    • 2.3 使用帮助
  • 三、ls命令的基本使用
    • 3.1 列出当前目录中的所有文件和目录
    • 3.2 列出指定目录中的所有文件和目录
    • 3.3 显示文件的详细信息
    • 3.4 列出所有文件和目录
    • 3.5 显示目录本身,
    • 3.6 按照文件名的字母倒序显示
    • 3.7 按照文件大小进行排序
    • 3.8 按照文件的修改时间进行排序
    • 3.9 查询文件或目录的inode号
    • 3.10 显示文件大小
  • 四、总结

在这里插入图片描述

一、ls命令介绍

ls命令是Linux操作系统中的一个常用命令,在Linux中是使用率较高,用于显示目录中的文件和子目录。ls命令的输出信息可以进行彩色加亮显示,以分区不同类型的文件。

二、ls命令的使用帮助

2.1 命令格式

ls [选项] [目录或文件名]

2.2 命令选项

  • 下面是ls命令的常用选项
- `-a`:列出所有文件和目录,包括以.开头的隐藏文件和目录;
- `-l`:以长列表的方式列出文件和目录的详细信息,包括文件权限、文件大小、创建时间等;
- `-h`:配合-l选项使用,以人类可读的格式显示文件大小,如1.2K、3.4M等;
- `-r`:倒序显示文件和目录;
- `-t`:按照文件或目录的修改时间排序;
- `-S`:按照文件或目录的大小排序;
- `-i`:显示文件或目录的inode号;
- `-d`:显示目录本身的信息,而不是目录下的文件和目录。

2.3 使用帮助

  • help帮助
ls --help

在这里插入图片描述

  • man帮助手册
man help

在这里插入图片描述

三、ls命令的基本使用

3.1 列出当前目录中的所有文件和目录

  • 列出当前目录下的所有文件和目录
[root@server-01 log]# ls
anaconda           cloudinit-deploy.log  dmesg                         maillog            messages-20230813  sa               spooler-20230806  yum.log
audit              cloud-init.log        dmesg.old                     maillog-20230806   messages-20230820  secure           spooler-20230813  yum.log-20230101
boot.log           cron                  ecs_network_optimization.log  maillog-20230813   messages-20230827  secure-20230806  spooler-20230820
boot.log-20221121  cron-20230806         grubby                        maillog-20230820   mongodb            secure-20230813  spooler-20230827
btmp               cron-20230813         grubby_prune_debug            maillog-20230827   mysqld.log         secure-20230820  tallylog
btmp-20230801      cron-20230820         journal                       messages           ntpstats           secure-20230827  tuned
chrony             cron-20230827         lastlog                       messages-20230806  rhsm               spooler          wtmp

3.2 列出指定目录中的所有文件和目录

  • 列出指定目录下的所有文件和目录,ls后面跟目录的相对路径或者绝对路径。
[root@server-01 log]# ls /var/log/
anaconda           cloudinit-deploy.log  dmesg                         maillog            messages-20230813  sa               spooler-20230806  yum.log
audit              cloud-init.log        dmesg.old                     maillog-20230806   messages-20230820  secure           spooler-20230813  yum.log-20230101
boot.log           cron                  ecs_network_optimization.log  maillog-20230813   messages-20230827  secure-20230806  spooler-20230820
boot.log-20221121  cron-20230806         grubby                        maillog-20230820   mongodb            secure-20230813  spooler-20230827
btmp               cron-20230813         grubby_prune_debug            maillog-20230827   mysqld.log         secure-20230820  tallylog
btmp-20230801      cron-20230820         journal                       messages           ntpstats           secure-20230827  tuned
chrony             cron-20230827         lastlog                       messages-20230806  rhsm               spooler          wtmp
[root@server-01 log]#

3.3 显示文件的详细信息

  • 以长列表的方式列出文件和目录的详细信息,包括文件权限、文件大小、创建时间等:
[root@server-01 log]# ls -l boot.log
-rw------- 1 root root 0 Nov 21  2022 boot.log

3.4 列出所有文件和目录

  • 列出所有文件和目录,包括以.开头的隐藏文件和目录:
[root@server-01 ~]# ls -a
-   addon-local-path-provisioner.yaml  .bash_profile  .cshrc    imgurl      .mongorc.js     p     .pydistutils.cfg  .tcshrc   web
.   .bash_history                      .bashrc        .dbshell  install.py  .mysql_history  .pip  .ssh              .viminfo  贪吃蛇.sh
..  .bash_logout                       .cache         .docker   .links      NodeBB          .pki  ta1.sh            .vimrc

3.5 显示目录本身,

  • 列出当前目录本身的信息,而不显示其下的文件和目录:
[root@server-01 ~]# ls -d /root
/root
  • 显示目录本身的详细信息
[root@server-01 ~]# ls -ld /root
dr-xr-x---. 13 root root 4096 Aug 31 18:53 /root

3.6 按照文件名的字母倒序显示

  • 按照文件名的字母倒序显示文件或目录
[root@server-01 test]# ls -r ./
z.txt  x.txt  v.txt  t.txt     s.txt  q.txt  o.txt  m.txt  k.txt  i.txt  g.txt  file05  file03  file01  d.txt  b.txt
y.txt  w.txt  u.txt  test.txt  r.txt  p.txt  n.txt  l.txt  j.txt  h.txt  f.txt  file04  file02  e.txt   c.txt  a.txt

3.7 按照文件大小进行排序

  • 使用-S选项可以按照文件大小进行排序:
[root@server-01 test]# ls -Slh /var/log/
total 4.3M
-rw-------  1 root   utmp            2.6M Jul 10 07:48 btmp-20230801
-rw-r--r--. 1 root   root            286K Aug 31 18:21 lastlog
-rw-r--r--  1 root   root            183K Nov 21  2022 cloud-init.log
-rw-------  1 root   root            122K Aug 20 03:10 cron-20230820
-rw-------  1 root   root            122K Aug 27 03:32 cron-20230827
-rw-------  1 root   root            122K Aug 13 03:25 cron-20230813
-rw-------  1 root   root            122K Aug  6 03:12 cron-20230806
-rw-------  1 root   root             87K Aug 27 03:32 messages-20230827
-rw-------  1 root   root             85K Aug 20 03:10 messages-20230820
-rw-------  1 root   root             84K Aug 13 03:25 messages-20230813
-rw-rw-r--. 1 root   utmp             84K Aug 31 18:21 wtmp
-rw-------  1 root   root             84K Aug  6 03:12 messages-20230806
-rw-------  1 root   root             81K Aug 31 19:01 cron
-rw-------  1 root   utmp             65K Aug 31 17:47 btmp
-rw-------  1 root   root             58K Aug 31 19:01 messages
-rw-------  1 root   root             53K Aug 31 18:22 secure
-rw-r--r--  1 root   root             33K Nov 20  2022 dmesg.old
-rw-r--r--  1 root   root             33K Nov 21  2022 dmesg
-rw-------  1 root   root             31K Nov 21  2022 boot.log-20221121
-rw-------  1 root   root             27K Aug 26 13:19 secure-20230827
-rw-r-----  1 mysql  mysql            14K Nov 25  2022 mysqld.log
drwxr-xr-x. 2 root   root            4.0K Jul 11  2019 anaconda

3.8 按照文件的修改时间进行排序

  • 按照文件的修改时间进行排序
[root@server-01 test]# ls -t ./
b  a.txt  c.txt  e.txt  g.txt  i.txt  k.txt  m.txt  o.txt  q.txt  s.txt  u.txt  w.txt  y.txt  test.txt  file02  file04
a  b.txt  d.txt  f.txt  h.txt  j.txt  l.txt  n.txt  p.txt  r.txt  t.txt  v.txt  x.txt  z.txt  file01    file03  file05

3.9 查询文件或目录的inode号

  • 查询文件inode号
[root@server-01 test]# ls -i a.txt
2509796 a.txt
  • 查询目录的inode号
[root@server-01 test]# ls -i /var/
131423 adm    131487 crash  131426 empty  131428 gopher    131087 lib    131420 lock  131433 mail  131435 opt       131419 run    131074 tmp
131424 cache  131425 db     131427 games  131443 kerberos  131432 local  131422 log   131434 nis   131436 preserve  131437 spool  131440 yp
  • 查询空目录的inode号
[root@server-01 test]# stat a
  File: ‘a’
  Size: 4096      	Blocks: 8          IO Block: 4096   directory
Device: fd01h/64769d	Inode: 560335      Links: 2
Access: (0755/drwxr-xr-x)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2023-08-31 19:07:38.707582291 +0800
Modify: 2023-08-31 19:02:36.406455154 +0800
Change: 2023-08-31 19:02:36.406455154 +0800
 Birth: -

注意:当你创建一个空文件时,操作系统会自动为该文件分配一个唯一的inode号,用于标识该文件。然而,ls -i命令显示的是文件的inode号和文件名,如果一个文件是空文件,那么文件名是空的,ls -i命令将不会显示该文件的inode号。

3.10 显示文件大小

  • 列出当前目录下所有文件和目录的详细信息,并以人类可读的方式显示文件大小
[root@server-01 test]# ls -lh /var/log
total 4.3M
drwxr-xr-x. 2 root   root            4.0K Jul 11  2019 anaconda
drwx------. 2 root   root            4.0K Aug 17 13:01 audit
-rw-------  1 root   root               0 Nov 21  2022 boot.log
-rw-------  1 root   root             31K Nov 21  2022 boot.log-20221121
-rw-------  1 root   utmp             65K Aug 31 17:47 btmp
-rw-------  1 root   utmp            2.6M Jul 10 07:48 btmp-20230801
drwxr-xr-x. 2 chrony chrony          4.0K Apr 13  2018 chrony
-rw-r--r--  1 root   root               0 Jul 11  2019 cloudinit-deploy.log
-rw-r--r--  1 root   root            183K Nov 21  2022 cloud-init.log
-rw-------  1 root   root             81K Aug 31 19:10 cron
-rw-------  1 root   root            122K Aug  6 03:12 cron-20230806
-rw-------  1 root   root            122K Aug 13 03:25 cron-20230813
-rw-------  1 root   root            122K Aug 20 03:10 cron-20230820
-rw-------  1 root   root            122K Aug 27 03:32 cron-20230827
-rw-r--r--  1 root   root             33K Nov 21  2022 dmesg
-rw-r--r--  1 root   root             33K Nov 20  2022 dmesg.old
-rw-r--r--  1 root   root             343 Nov 21  2022 ecs_network_optimization.log
-rw-------  1 root   root               0 Jul 11  2019 grubby
-rw-r--r--. 1 root   root               0 Jul 11  2019 grubby_prune_debug
drwxr-sr-x+ 3 root   systemd-journal 4.0K Jul 11  2019 journal
-rw-r--r--. 1 root   root            286K Aug 31 18:21 lastlog
-rw-------  1 root   root               0 Aug 27 03:32 maillog
-rw-------  1 root   root               0 Jul 30 03:24 maillog-20230806
-rw-------  1 root   root               0 Aug  6 03:12 maillog-20230813
-rw-------  1 root   root               0 Aug 13 03:25 maillog-20230820
-rw-------  1 root   root               0 Aug 20 03:10 maillog-20230827
-rw-------  1 root   root             58K Aug 31 19:10 messages
-rw-------  1 root   root             84K Aug  6 03:12 messages-20230806
-rw-------  1 root   root             84K Aug 13 03:25 messages-20230813
-rw-------  1 root   root             85K Aug 20 03:10 messages-20230820
-rw-------  1 root   root             87K Aug 27 03:32 messages-20230827
drwxr-xr-x  2 mongod mongod          4.0K Nov 24  2022 mongodb
-rw-r-----  1 mysql  mysql            14K Nov 25  2022 mysqld.log
drwxr-xr-x  2 ntp    ntp             4.0K Apr 13  2018 ntpstats
drwxr-xr-x. 2 root   root            4.0K Jul 11  2019 rhsm
drwxr-xr-x  2 root   root            4.0K Aug 31 00:00 sa
-rw-------  1 root   root             53K Aug 31 18:22 secure
-rw-------  1 root   root             219 Jul 31 01:28 secure-20230806
-rw-------  1 root   root            2.5K Aug 10 04:44 secure-20230813
-rw-------  1 root   root            1.3K Aug 19 18:17 secure-20230820
-rw-------  1 root   root             27K Aug 26 13:19 secure-20230827
-rw-------  1 root   root               0 Aug 27 03:32 spooler
-rw-------  1 root   root               0 Jul 30 03:24 spooler-20230806
-rw-------  1 root   root               0 Aug  6 03:12 spooler-20230813
-rw-------  1 root   root               0 Aug 13 03:25 spooler-20230820
-rw-------  1 root   root               0 Aug 20 03:10 spooler-20230827
-rw-------. 1 root   root               0 Jul 11  2019 tallylog
drwxr-xr-x. 2 root   root            4.0K Jul 11  2019 tuned
-rw-rw-r--. 1 root   utmp             84K Aug 31 18:21 wtmp
-rw-------  1 root   root            2.3K Jan 26  2023 yum.log
-rw-------  1 root   root            3.3K Dec  2  2022 yum.log-20230101

四、总结

ls 是 Linux 中使用频繁的命令,主要用于展示当前或指定目录下的文件及子目录;它可以通过附加选项来增强功能,例如 -l 用于提供详细的列表视图,而 -a 则用来显示包括隐藏文件在内的所有文件;此外,ls 支持颜色高亮显示,帮助用户直观地区分不同类型的文件;颜色配置可通过环境变量 LS_COLORS 自定义,增加文件管理的效率;ls 还能处理多个目录参数,并与其他命令结合使用,增强了其实用性和灵活性。

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

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

相关文章

临床必备!常用的营养评估量表分享,附操作步骤与评分标准

常笑医学整理了3个临床常用的营养评估量表,支持下载和在线使用,供临床医护工作人员参考。 01 营养风险筛查评分简表 (完整量表请点击量表名称查看) NRS2002(Nutrition Risk Screening 2002, NRS2002)是欧洲…

嵌入式学习笔记十三——C语言指针变量、一维数组的指针、快速排序

指针变量 指针初始化 指针变量初始化:如果没有初始化,指针是随机值,既野指针。初始化可以让指针变量有明确的指向。 int a 10;int *p &a;//指针初始化int *p NULL; //NULL 0号地址 --- 空指针 指针赋值 int * p;p NULL;int a;i…

【机器学习西瓜书学习笔记——特征选择与稀疏学习】

机器学习西瓜书学习笔记【第十一章】 第十一章 特征选择与稀疏学习11.1子集搜索与评价特征特征选择为什么要特征选择如何进行特征选择子集搜索子集评价 11.2过滤式选择Relief适用场景如何确定相关统计量 11.3包裹式选择优缺点 11.4嵌入式选择与L1正则化L1/L2正则化L1正则化问题…

【微信小程序开发】——奶茶点餐小程序的制作(一)

👨‍💻个人主页:开发者-曼亿点 👨‍💻 hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 👨‍💻 本文由 曼亿点 原创 👨‍💻 收录于专栏&#xff1a…

Nginx+Tomcat负载均衡、动静分离群集(群集)

实验主机:101 102 103 101:nginx 102:tomcat1 103:tomcat2 先配置两个tomcat服务器 拉进去所需的安装包; 同步会话开始搭建; 安装编译环境; 解压并移动到方便管理的地方; 然后在root的家目录下创建一个目录及测试…

Google安装JSON-handle扩展

JSON-hande下载地址: JSON-Handle 官网 - 打开json格式文件的浏览编辑器 1. 重命名扩展文件(crx)后缀 为 zip。 2. 解压zip成文件夹,保存到指定目录。 3. Google浏览器地址栏输入 “chrome://extensions/”回车。然后开启 开发者模式。 4. 点击“加载…

疯狂Java讲义_08_泛型

文章目录 泛型的传参若函数里的参数使用基类接受所有的派生类,怎么做? 类型通配符的上限类型通配符的下限 泛型的传参 注意 若类 Base 是类 Derived 的基类(父类),那么数组类型 Base[] 是 Derived[] 的基类&#xff0…

【编码解码神器】CyberChef v10.18.9

# 简介 CyberChef 是一个在线编码解码工具,包含了四百多种在线编解码工具,它提供了一种简单易用的方式来对数据进行各种加密、解密、编码和解码操作。你可以把它想象成一个多功能的”数字厨房”,在这里,你可以用各种”烹饪”方法…

无人机与自主系统

无人机(Unmanned Aerial Vehicle, UAV)和自主系统正在迅速改变许多行业,从农业到物流,再到军事领域。无人机作为一种能够自主或半自主飞行的飞行器,结合自主系统的技术,具备了更高的灵活性和执行复杂任务的…

牛羊肉巨头的数字化战略:凯宇星辉如何领先市场

凯宇星辉的创业成长史,给出了中国牛羊肉企业如何从散户走向集团化经营的路线图。 总部位于大连的凯宇星辉,在牛羊肉进口贸易领域白手起家,十余年时间,已形成以澳新、南美、北美等全球三大牛羊肉主产区为主渠道的全球直采网络布局…

【linux|001】Unix和Linux的关系 及 它们的发展历史

🍁博主简介: 🏅云计算领域优质创作者 🏅2022年CSDN新星计划python赛道第一名 🏅2022年CSDN原力计划优质作者 ​ 🏅阿里云ACE认证高级工程师 ​ 🏅阿里云开发者社区专家博主 💊交流社…

巴黎奥运会上,墨水屏标签能怎么玩?

截至8月7日,中国代表团在2024巴黎奥运会上已经斩获了22金21银16铜,合计59枚奖牌,位居奖牌第二。在为奥运健儿欢呼喝彩的同时,我们也注意到巴黎奥运会在环保方面的创新,并探讨如何应用墨水屏标签这一智慧显示技术&#…

[转]通俗易懂的LLM(上篇)

前言 2022年年底OpenAI发布ChatGPT,将LLM(Large Language Model)带向了一个新的高度,而2023年OpenAI继续放出大招:更强大的GPT-4问世,瞬间引爆了整个互联网圈。在这个大模型时代,作为一名NLPer&…

什么是oled?

LED 是有机发光二极管(Organic Light-Emitting Diode)的缩写,是一种先进的显示技术。与传统的液晶显示技术(LCD)不同,OLED 显示器不需要背光模块,因为每个像素本身可以发光。 OLED 的基本原理和…

文档控件DevExpress Office File API v24.1 - 支持基于Unix系统的打印

DevExpress Office File API是一个专为C#, VB.NET 和 ASP.NET等开发人员提供的非可视化.NET库。有了这个库,不用安装Microsoft Office,就可以完全自动处理Excel、Word等文档。开发人员使用一个非常易于操作的API就可以生成XLS, XLSx, DOC, DOCx, RTF, CS…

Java实战二 添加lombok使用@Data,编写第一个接口-用户注册并使用postman测试

添加lombok依赖 使用Data注解,省略写getter和setter 创建返回结果Result类 创建三层结构UserController类UserService接口UserServiceImpl实现类UserMapper接口 UserController编写注册接口register UserService定义方法 UserServiceImpl实现方法 UserMapper中编写s…

一款免费、简单、快速的JS打印插件,web 打印组件,基于JavaScript开发,支持数据分组,快速分页批量预览,打印,转pdf,移动端,PC端

前言 在数字化办公时代,打印需求呈现多样化和复杂化的趋势。现有的打印软件往往存在cao作繁琐、兼容性差、功能单一等问题,难以满足现代企业高效、灵活的打印需求。 为了解决这些痛点,一款简单、高效、多功能的打印插件成为了迫切需求。 介…

《MySQL数据库》数据导入、导出、表处理—/—<4>

一、插入数据 1、可使用外部工具navicat导入数据的情况下 因为部分公司不允许使用外部工具去导入数据 对于大批量数据,除了上节课中使用导入向导插入数据,也可在vscode中打开csv文件,然后选中光标,长按shiftctrl,拖动…

基于springboot的小微企业融资征信平台系统的设计与实现-计算机毕业设计源码99083

摘 要 本文详细阐述了一个基于Spring Boot框架的小微企业融资征信平台系统的设计与实现过程。该系统旨在为小微企业、金融机构以及征信机构提供一个高效、安全的融资征信交流平台。系统支持企业用户的登录注册、首页浏览、交流论坛参与、通知公告查看、新闻资讯阅读以及个人账户…

点亮童梦思考之光,神秘伙伴震撼登场!

本文由 ChatMoney团队出品 介绍说明 咱们来聊聊“十万个为什么”机器人,这对小朋友来说,好处可多了去啦! 小朋友们天生好奇,满脑子都是问号。 这个机器人就像个啥都懂的知识达人,不管他们问啥,都能给出答…