在 Linux 中,有非常多的命令可以让我们用来执行各种各样的任务。当我们想要像使用文件浏览器一样列出一个目录下的内容时,大家第一时间想到的是 ls 命令。但只有 ls 命令能实现这个目的吗?显然不是。

下面,良许就给大家介绍Linux下列出目录内容的一些命令,一起来看看吧。

ls

Linux 中最常用的列出目录下内容的命令就是 ls 命令。默认情况下, ls 显示目录下的所有非隐藏内容。在显示结果里文件和目录会被显示为不同的颜色,具体显示的颜色取决于终端的配色主题。

ls 命令列出的是当前所在目录的内容,如果要查看其他目录中的内容,可以在命令中指定具体路径:

$ ls /其他的/目录/路径

如果你想要查看目录中的隐藏的内容,可以添加 -a 选项:

$ ls -a

你还可以使用 -l 选项来以列表的形式列出当前目录的内容,这时候所列出来的文件大小将以字节的形式显示,非常不方便阅读。我们可以加上 -h 选项,使用易于人类阅读的形式显示文件大小,比如 kMG 等方便阅读的单位。

当然,为了方便,可以直接将两个选项合二为一写在一起。

$ ls -lh

dir

ls 命令大家比较熟悉,使用的频率也非常高。dir 命令与 ls 命令类似,也是列出目录下内容。如果列出的文件名中含有特殊字符,比如空格,那么这些特殊字符前将会显示一个反斜杠 \

dir 与 ls 比较相似,在 ls 命令中的命令参数在 dir 中也是可用的。

实际上,dir 命令等同于以下这条命令:

$ ls -C -b

其中:

-C : 以列的形式显示内容

-b : 在特殊字符前添加反斜杠 \

vdir

vdir 命令以长列表的形式显示目录下的内容,并且特殊字符前也是加了反斜杠 \ 的。长列表中显示了该文件或目录的权限信息,连接数,所有者,组所有者,文件大小,上次修改时间和名称。

vdir 命令和以下 ls 命令的作用是相同的:

$ ls -l -b

其中:

-l : 以列表的形式显示目录下的内容

-b : 在特殊字符前面加反斜杠 \

dir 和 vdir 存在的意义

看到这里,大家肯定会有个疑问,既然 ls 命令都可以实现 dir 及 vdir 的全部功能,那么这二者存在还有啥意义?

Shell 命令常常作为脚本的一部分,这些脚本的输出有时候是显示到终端上,有时被重定向到文件中或者有时也简单地通过管道传输给其他命令。

但是在在有些情况下,ls 命令会因为脚本执行时的性能问题导致得到的结果不符合预期。所以, Linux 的开发人员研究出了这两个命令,使用这两个命令就不会遇到那样的性能问题。

一些其他知识

当我们使用 ls 命令查看目录内容时,不同类型的文件将显示为不同颜色,而使用 dirvdir 命令时则所有内容都是同一种颜色。这是因为在默认情况下 ls 其实是 ls --color=auto 的别名,因此对输出的内容配置了颜色。

如果在使用dirvdir 时也想让输出内容按类型不同显示不同颜色,那么可以使用:

$ dir --color
$ vdir --color


公众号:良许Linux

有收获?希望老铁们来个三连击,给更多的人看到这篇文章

整理 Linux下列出目录内容的命令的更多相关文章

  1. Linux下查看文件内容的命令

    查看文件内容的命令: cat     由第一行开始显示内容,并将所有内容输出 tac     从最后一行倒序显示内容,并将所有内容输出 more    根据窗口大小,一页一页的现实文件内容 less ...

  2. Linux下查看文件内容的命令和工具

    1.catcat命令主要用来查看文件内容,创建文件,合并文件,追加文件等. 1.1.查看文件 格式:cat 文件名称 说明:这条命令会把文件内容全部输出到显示屏上. cat -n 文件名称:查看文件内 ...

  3. linux 命令 - ls(列出目录内容)

    ls - 列出目录内容 语法: ls (选项) (参数) 选项: -a:显示所有档案及目录(ls内定将档案名或目录名称为“.”的视为影藏,不会列出): -A:显示除影藏文件“.”和“..”以外的所有文 ...

  4. Linux 命令 - ls: 列出目录内容

    ls 命令很可能是用户最常使用的命令,通过 ls 命名可以查看目录内容,确定各种重要文件和目录的属性. 命令格式 ls [OPTION]... [FILE]... 命令参数 -a, --all 列出所 ...

  5. 【收集整理】Linux下的目录讲解

    Linux下的目录介绍:在Linux系统中,一切东西都是存放在一个唯一的“虚拟文件系统”中的,这个“虚拟文件系统”是树状的结构以一个根目录开始.以文件来表示所有逻辑实体和非逻辑实体,逻辑实体指文件和目 ...

  6. [转帖]linux下的find文件查找命令与grep文件内容查找命令

    linux下的find文件查找命令与grep文件内容查找命令 https://www.cnblogs.com/shileima/p/8431393.html 在使用linux时,经常需要进行文件查找. ...

  7. Linux 权限和目录更改、移除、更换目录、列出目录内容、使用通配符、移动、重命名

    12 chgrp :改变档案.目录所属群组          chgrp -R dirname/filename   chown :改变档案/目录拥有者              chown -R 账 ...

  8. linux下维护服务器之常用命令

    linux下维护服务器之常用命令! 第1套如下: 正则表达式: 1.如何不要文件中的空白行和注释语句: [root@localhost ~]# grep -v '^$' 文件名 |grep -v '^ ...

  9. Linux下几种文件传输命令

    Linux下几种文件传输命令 sz rz sftp scp 最近在部署系统时接触了一些文件传输命令,分别做一下简单记录: 1.sftp Secure Ftp 是一个基于SSH安全协议的文件传输管理工具 ...

随机推荐

  1. Codeforces Round #647 (Div. 2)

    Problem A https://codeforces.com/contest/1362/problem/A 判断x/y是不是2的k次方, 如果是 k/3 + (k%3)/2 + (k%3%2)即为 ...

  2. 解决Mac上打开txt文件乱码问题

    出处:https://www.jianshu.com/p/f55ddf1e9839 经常会在Mac上打开一个txt文件,发现里面的中文都是乱码,问题是在Windows和手机上看都完全是正常的,这就十分 ...

  3. 基于NACOS和JAVA反射机制动态更新JAVA静态常量非@Value注解

    1.前言 项目中都会使用常量类文件, 这些值如果需要变动需要重新提交代码,或者基于@Value注解实现动态刷新, 如果常量太多也是很麻烦; 那么 能不能有更加简便的实现方式呢? 本文讲述的方式是, 一 ...

  4. 学习ASP.NET Core(11)-解决跨域问题与程序部署

    上一篇我们介绍了系统日志与测试相关的内容并添加了相关的功能:本章我们将介绍跨域与程序部署相关的内容 一.跨域 1.跨域的概念 1.什么是跨域? 一个请求的URL由协议,域名,端口号组成,以百度的htt ...

  5. 如何在VMware虚拟机中安装CentOS6.7系统(下篇)

    上一篇文章讲到了CentOS6.7的安装教程,安装步骤到时区选择这块了,这篇文章接上篇文章,继续讲述CentOS6.7的安装教程,直至安装完成. 17.设置root的登录密码,日后登录虚拟机,用户名就 ...

  6. mysql主从同步参数

    默认情况下,mysql的主从同步,会启用三个线程,两个IO线程和一个SQL线程.主从同步的主要文件就是binlog文件,从库从主库的binlog中读取数据,然后记录在从库自己的relaylog中,然后 ...

  7. 关于安装Django包的问题

    在Windows的环境下,有些包确实不好安装的,比如reportlab-3.2.0-cp27-none-win32.whl,根据xadmin安装的经验,从这个.whl里把文件夹reportlab解压出 ...

  8. Redis的String探索之路

    String是redis最基本的类型,键值对(Key : Value 形式),Redis 的 String 可以包含任何数据,最大能存储 512 MB.(一个键最大能存储 512MB) Redis 的 ...

  9. Cannot instantiate the type Map

    今天在使用Map中犯了个低级错误,记录一下: 打算使用map为一个视频List观看记录的统计标识,key为vid,value默认为false,当该key已经统计,标识value为true,初始实例化M ...

  10. linux shell编程子bash变量

    参考视频:https://www.imooc.com/u/279399/courses?sort=publish https://www.imooc.com/video/6516 慕课网 用户的自定义 ...