如何使用ls命令列出linux上的文件和目录

我们每天都在使用linuxls命令而不去考虑它。真遗憾。注意一下,您会发现许多有用的选项,包括一些您应该添加到命令行库中的选项。...

我们每天都在使用linuxls命令而不去考虑它。真遗憾。注意一下,您会发现许多有用的选项,包括一些您应该添加到命令行库中的选项。

ls列出文件和目录

ls命令可能是大多数Linux用户遇到的第一个命令。我们这些整天围着命令行转的人日复一日地使用它,甚至没有想过它。这也许可以解释为什么这个命令比大多数用户意识到的要多。我们用它列出文件,看看目录里有什么。当我们想查看文件的权限时,我们以长格式列出文件。除此之外,它很少得到考虑。

ls命令是具有丰富选项的命令之一。也许这是问题的一部分。有这么多的选择,你如何从中筛选出有用的呢?找到它们之后,你怎么记得它们?

ls命令及其选项和参数字符串的有用排列是别名的最佳候选。实际上,在大多数发行版中,您认为的“裸”ls命令实际上是一个别名。除此之外,type命令还可以用来显示别名的基本定义。让我们看看ls的定义:

ls型

如何使用ls命令列出linux上的文件和目录

每次使用ls命令时,都会自动包含--color=auto参数。这就是为清单中的不同文件类型提供不同颜色的原因。

相关:如何在Linux上创建别名和Shell函数

简单ls列表

每个使用过Linux终端的人都知道,默认情况下,ls会列出当前目录中的文件和目录。

ls

如何使用ls命令列出linux上的文件和目录

如果要在单个列中生成列表,请使用-1(每行一个文件)选项:

ls -1

如何使用ls命令列出linux上的文件和目录

稍后我们将在列表顶部讨论这个看起来很奇怪的文件名。

在不同目录上使用ls

要让ls列出当前目录以外的目录中的文件,请在命令行上将目录的路径传递给ls。您还可以将多个目录传递给ls,并将它们逐个列出。在这里,我们要求ls列出两个目录中的文件,一个称为“Help”,另一个称为“gc\u Help”

ls Help gc_help

如何使用ls命令列出linux上的文件和目录

当ls列出第一个目录的内容时,它会列出第二个目录的内容。它在处理每个目录时打印它们的名称:

如何使用ls命令列出linux上的文件和目录

使用文件模式

要有选择地列出一组文件,请使用模式匹配。“问号”?“将表示任何单个字符,星号“*”将表示任何字符串。要列出名称以“ip”开头的任何文件或目录,请使用以下格式:

ls ip_*

如何使用ls命令列出linux上的文件和目录

要列出扩展名为“.c”的文件,请使用以下格式:

ls *.c

如何使用ls命令列出linux上的文件和目录

您还可以将ls与grep一起使用,并使用grep的模式匹配功能。让我们查找名称中包含字符串“\u pin\”的任何文件:

ls | grep _pin_

如何使用ls命令列出linux上的文件和目录

这与单独使用ls几乎相同,有两个通配符:

ls | grep _pin_ ls *_pin_*

如何使用ls命令列出linux上的文件和目录

为什么几乎一样?注意不同的布局。grep强制输出为每行一个文件名的格式。

非打印字符

您可能会发现自己的文件名中包含非打印或控制字符。通常,当您展开从web下载的存档文件或检索git存储库时,会发生这种情况,而原始作者在创建文件时出错,但没有发现它。

我们奇怪的文件就是其中之一:

如何使用ls命令列出linux上的文件和目录

如果我们在文件浏览器中查看它并按“F2”将其重命名,则非打印字符由一个奇怪的符号表示。

如何使用ls命令列出linux上的文件和目录

您可以使用-b(escape)选项来查看文件名实际包含的内容。此选项使ls使用C编程语言的转义序列来表示控制字符。

ls -b a*

如何使用ls命令列出linux上的文件和目录

这个神秘的字符显示为一个换行符,用C表示为“\n”

忽略文件

要从列表中删除某些文件,请使用--hide选项。假设您不想在清单中看到backup“.bak”文件。您可以使用以下命令:

ls ls --hide=*.bak

如何使用ls命令列出linux上的文件和目录

第二个清单中不包括“.bak”文件。

长格式列表

l(长清单)选项使ls提供关于每个文件的详细信息。

ls -l

如何使用ls命令列出linux上的文件和目录

这里有很多信息,所以让我们来看看。

ls显示的第一件事是列表中所有文件的总大小。然后每个文件或目录单独显示在一行上。

第一组10个字母和破折号是文件类型以及所有者、组和其他文件权限。

第一个字符表示文件类型。它将是以下之一:

  • –:常规文件。
  • b:一个特殊文件。
  • c:一个字符特殊文件。
  • d:目录。
  • l:象征性的联系。
  • 一个网络文件。
  • p:一个命名的管道。
  • s:一个插座。

接下来的九个字符是三组连续显示的三个字符。每组三个代表读、写和执行权限,按顺序排列。如果授予了权限,则会出现r、w或x。如果未授予权限,则会显示连字符。

第一组三个字符是文件所有者的权限。第二组三个权限用于组成员,最后一组三个权限用于其他成员。

有时,所有者的执行权限由s表示。这是setuid位。如果存在,则表示该文件是以文件所有者的权限执行的,而不是以执行该文件的用户的权限执行的。

组的执行权限也可以是s。这是setgid位。当它应用于一个文件时,意味着该文件将以ower组的权限执行。当与目录一起使用时,在目录中创建的任何文件都将从创建它们的目录中获取组权限,而不是从创建文件的用户获取组权限。

其他人的执行权限有时可以用t表示。这是粘性位。它通常应用于目录。如果设置了此选项,则无论对目录中的文件设置了写入和可执行权限,只有文件所有者、目录所有者或根用户可以重命名或删除目录中的文件。

粘性位的一个常见用法是在文件夹中,例如“/tmp”。这可由计算机上的所有用户写入。目录上的粘性位确保用户和用户启动的进程只能重命名或删除自己的临时文件。

我们可以在“/tmp”目录中看到粘性位。请注意-d(directory)选项的使用。这会导致ls报告目录的详细信息。如果没有这个选项,ls将报告目录中的文件。

ls -l -d /tmp

如何使用ls命令列出linux上的文件和目录

相关:如何在Linux上使用chmod命令

权限后面的数字是指向文件或目录的硬链接数。对于一个文件,这通常是一个,但如果其他硬链接被创建,这个数字将增加。一个目录通常至少有两个硬链接。一个是指向自身的链接,另一个是其父目录中的条目。

接下来将显示所有者和组的名称。它们后跟文件大小和上次修改文件的日期。最后给出了文件名。

可读文件大小

以字节为单位的文件大小并不总是方便的。要以最合适的单位(千字节、兆字节等)查看文件大小,请使用-h(人类可读)选项:

ls -l -h

显示隐藏文件

要查看隐藏文件,请使用-a(all)选项:

ls -l -a

两个条目“.”和“.”分别表示当前目录和父目录。名为“.base\u settings”的文件现在第一次可见。

省略。还有。。来自列表

如果您不希望列表中有“.”和“.”项,但确实希望看到隐藏的文件,请使用-A(几乎所有)选项:

ls -l -A

隐藏文件仍会列出,但“.”和“.”项将被抑制。

递归列出目录

要让ls列出所有子目录中的文件,请使用-R(递归)选项

ls -l -R

ls遍历起始目录下的整个目录树,并列出每个子目录中的文件。

如何使用ls命令列出linux上的文件和目录

显示uid和gid

要显示用户ID和组ID而不是用户名和组名,请使用-n(数字uid和gid)选项。

ls -n

排序列表

您可以按扩展名、文件大小或修改时间对列表进行排序。这些选项不必与长列表格式一起使用,但这样做通常是有意义的。如果按文件大小排序,则可以在列表中查看文件大小。当您按扩展类型排序时,长列表格式并不那么重要。

要按扩展名排序,请使用-X(按扩展名排序)选项。

ls -X -1

如何使用ls命令列出linux上的文件和目录

首先列出目录(完全没有扩展名),然后根据扩展名按字母顺序列出其余目录。

要按文件大小排序,请使用-S(按文件大小排序)选项。

ls -l -h -S

排序顺序是从大到小。

要按修改时间对列表排序,请使用-t(按修改时间排序)选项。

ls -l -t

如何使用ls命令列出linux上的文件和目录

列表按修改时间排序。

如果文件修改时间在当前年度内,则显示的信息为月份、日期和时间。如果修改日期不在当前年份中,则显示的信息是月份、日期和年份。

获取目录中最新和最旧文件的一种快速方法是将ls与head和tail命令结合使用。

要获取最新的文件或目录,请使用以下命令:

ls -t | head -1

要获取最旧的文件或目录,请使用以下命令:

ls -t | tail -1

如何使用ls命令列出linux上的文件和目录

反转排序顺序

要反转任何排序顺序,请使用-r(reverse)选项。

ls -l -h -S -r

如何使用ls命令列出linux上的文件和目录

列表现在从最小的文件到最大的文件排序。

还有更多

查看ls的手册页,有更多的选项。其中一些满足一些模糊的用例,但是偶尔,您会很高兴了解它们。

您需要以Linux所能提供的最大精度查看文件时间戳吗?使用全职选项:

ls --full-time

也许你想看看文件的索引节点号?使用inode选项:

ls -i

您是否正在使用单色显示器,并希望消除所有混淆目录和链接文件的风险?使用classify选项,ls会将其中一个附加到每个列表条目:

  • /:目录。
  • @:符号链接。
  • |:命名管道。
  • =:一个插座。
  • *:可执行文件
ls -F

做些挖掘。你会发现ls是一个丰富的矿脉,你会不断发现宝石。

  • 发表于 2021-04-02 21:28
  • 阅读 ( 225 )
  • 分类:互联网

你可能感兴趣的文章

如何将命令行输出保存到windows、mac和linux上的文件

... 今天我们将介绍如何在Windows、Mac和Linux上将命令的输出发送到bashshell中的文本文件。 ...

  • 发布于 2021-03-12 15:56
  • 阅读 ( 629 )

如何在linux和macos上将手册页缩短为可读的解释

... 使用tldr快速了解如何使用命令 ...

  • 发布于 2021-03-14 01:21
  • 阅读 ( 192 )

如何隐藏linux上的文件和文件夹

... 我们已经介绍了如何在Windows和Mac上隐藏文件和文件夹。下面介绍如何在Linux上使用终端和Ubuntu中的文件管理器Nautilus隐藏文件和文件夹。我们还将讨论几种安全地隐藏文件和文件夹的方法...

  • 发布于 2021-03-25 15:00
  • 阅读 ( 401 )

启动linux的9个基本命令

... 如何在linux下打开终端 ...

  • 发布于 2021-03-26 18:33
  • 阅读 ( 224 )

如何在linux上查找和删除断开的符号链接

...棒的特性,但是它们可能会断开并指向任何东西。下面是如何找到断开的符号链接,检查它们,并在需要时从系统中删除它们。 符号链接101 符号链接,也称为“软链接”和“符号链接”,是一种可以指向文件和目录的快捷方...

  • 发布于 2021-04-01 09:09
  • 阅读 ( 208 )

如何使用shopt定制bashshell

...shshell的行为,您可以控制超过50个设置。我们将向您展示如何按照您喜欢的方式定制您的Linux系统。 shopt内置 shopt内置是bashshell所有版本的一部分,因此不需要安装任何东西。多年来,shopt提供的选项数量稳步增加。所以,Bash...

  • 发布于 2021-04-01 12:30
  • 阅读 ( 172 )

如何在linux上使用fd命令

...覆盖默认值,但在许多情况下,它们对您有利。 相关:如何使用所有Linux的搜索命令 安装fd 由于ubuntu19.04(Disco Dingo,),您可以通过使用apt get调用官方维护的包来直接安装fd。如果您运行的是较旧版本的Ubuntu,请查看Git hub页面...

  • 发布于 2021-04-01 21:52
  • 阅读 ( 167 )

如何在linux上使用suid、sgid和sticky位

...权限的人才能访问存储的密码,那么那些没有该权限的人如何更改他们的密码? 提升你的地位 通常,Linux命令和程序运行时与启动程序的人具有相同的权限集。当root运行passwd命令以更改密码时,它将以root的权限运行。这意味着...

  • 发布于 2021-04-02 14:48
  • 阅读 ( 172 )

如何在linux上使用stat命令

...,而且您不必记住一组晦涩难懂的命令行选项。 相关:如何使用ls命令列出Linux上的文件和目录 快速比较 让我们使用ls给出一个长列表(-l选项),其中包含人类可读的文件大小(-h选项): ls -lh ana.h 从左到右,ls提供的信息是...

  • 发布于 2021-04-02 19:25
  • 阅读 ( 162 )

linux下如何使用which命令

...在shell中的,因此Bash不必费劲地查找这些命令。 但是Bash如何定位其他命令、程序和外部独立二进制文件呢?Bash使用路径,实际上是一组路径,每个路径指向一个目录。然后,它在每个目录中搜索与您试图运行的命令或程序匹配...

  • 发布于 2021-04-02 20:07
  • 阅读 ( 168 )
cwg290m
cwg290m

0 篇文章

相关推荐