如何在 Linux 中使用 ls 命令

如果您不知道如何使用 ls 命令,那么获取与存储文件相关的详细信息会很棘手。 在这里,我们将讨论与 Linux 上的 ls 命令相关的所有内容,以及与它一起使用的一些各种标志。

Linux 上的 ls 命令

ls 命令用于列出当前工作目录中存在的所有文件和文件夹。 您还可以使用相同的命令获取有关文件的各种信息。 由于它已包含在 GNU 核心实用程序包中,因此您无需在系统上安装任何额外的包即可使用它。

您可以将 ls 与其他链接 bash 命令也是如此。 为了 example管道 grep 声明与 ls 将允许您搜索和过滤特定文件的目录。

如何使用 ls 命令

ls 命令的基本语法是:

ls [options] [directory]

该命令最简单的用途之一是列出当前工作目录中的所有文件和文件夹。

ls

如果您在系统的根目录中执行上述语句,您将看到如下所示的输出。

bin    dev   home   lib64        mnt   proc   run    srv   tmp   var
boot etc lib lost+found opt root sbin sys usr

列出特定目录中的文件

要列出属于不同文件夹(不是当前工作目录)的文件,您必须将目录路径与命令名称一起传递。

ls [directory]

获取所有文件的列表 /启动 目录:

ls /boot

输出现在将显示提供的目录名称中存在的文件和文件夹。

EFI   grub   initramfs-linux-fallback.img   initramfs-linux.img   vmlinuz-linux

使用 -F 带有该命令的标志将在每个目录的末尾添加一个 / 字符。

EFI/   grub/   initramfs-linux-fallback.img   initramfs-linux.img   vmlinuz-linux

您还可以通过使用分隔路径名来传递多个目录 空间 特点。

ls /boot /usr
Output
/boot:
EFI grub initramfs-linux-fallback.img initramfs-linux.img vmlinuz-linux
/usr:
bin etc include lib lib32 lib64 local sbin share src

列出根目录中的文件

根目录包含系统上的所有其他目录和文件。 它是计算机目录层次结构中最顶层的文件夹。 根目录通常由 / 特点。

ls /

无论您在输入命令时位于哪个目录中,上述命令都会生成一个输出,其中列出了根目录中存在的所有子文件夹和文件。

列出父目录中的文件

Linux 中的父目录是当前目录之上的目录。 让我们来 /usr/bin 作为一个 example. 这里, /bin 是您当前的工作目录,并且 /usr 是父目录。

要获取父目录中所有文件的列表:

ls ..
bin   etc   include   lib   lib32   lib64   local   sbin   share   src

添加另一个 .. 将带您到父目录的父目录。 为了 example, /var/log/旧 是您当前的工作目录。 是.. 将列出存在于 /日志 目录而 ls ../.. 将为您提供包含在 /var 目录。

ls ../..
cache   db   empty   games   lib   local   lock   log   mail   opt   run   spool   tmp

列出主目录中的文件

Linux 中的主目录由 ~ 特点。 因此,要列出您的主目录中可用的内容:

ls ~

仅列出目录(无文件)

如果出于某种原因您只想列出目录中存在的文件夹,请使用 -d 使用默认的 ls 命令标记。

ls -d /home

列出带有子目录的文件

使用 * ls 命令的字符将为您提供当前工作目录中所有文件和文件夹的列表,以及子目录。

ls *

递归列出文件

使用 -R 带有默认命令的标志将列出目录中存在的所有文件和文件夹,直到最后一级。

ls -R

请注意,您还可以将目录路径与递归标志一起传递。 这意味着 ls /usr/home -R 是一个有效的命令。

列出文件及其大小

要获取所有文件的名称及其大小,请使用 -s 用命令标记。

ls -s /yay-git
total 2944
4 pkg 4 src 4 yay 2932 yay-git-10.1.2.r0.g7d849a8-2-x86_64.pkg.tar.zst

列出包含详细信息的文件

-l flag 允许您获取 Linux 目录内容的列表以及每个条目的详细描述。 输出中包含以下信息:

  1. 文件和文件夹权限
  2. 链接数
  3. 内容所有者
  4. 群主
  5. 内容大小
  6. 文件名
  7. 最后修改的日期和时间
ls -l
total 2944
drwxr-xr-x 3 sharmadeepesh sharmadeepesh 4096 Feb 8 13:53 pkg
drwxr-xr-x 4 sharmadeepesh sharmadeepesh 4096 Feb 8 13:52 src
drwxr-xr-x 7 sharmadeepesh sharmadeepesh 4096 Feb 8 13:54 yay
-rw-r--r-- 1 sharmadeepesh sharmadeepesh 2998674 Feb 8 13:53 yay-git-10.1.2.r0.g7d849a8-2-x86_64.pkg.tar.zst

第一列是为文件和文件夹权限保留的。 第一个字符表示文件的类型,接下来的九个字符表示文件的权限。

您经常会遇到的各种类型的文件:

  1. 常规文件 (-)
  2. 阻止特殊文件 (b)
  3. 字符特殊文件 (c)
  4. 目录 (d)
  5. 符号链接 (l)
  6. 网络文件 (n)
  7. 先进先出 (p)
  8. 插座

谈到文件权限,输出中使用了以下字符。

  1. 可读(r)
  2. 可写(w)
  3. 可执行文件 (x)

让我们来 drw-r–r– 作为一个 example. 第一个字符表示该条目是一个目录。 以下两个字符表示当前用户具有读写权限。 其余字符提供有关其他用户的文件权限的信息。

列出具有可读大小的文件

-s 命令为您提供与每个条目关联的数值。 很明显,你不会知道这个值的含义是什么。 因此,要以可读的方式列出文件及其大小,请使用 -lh 标志连同命令。

ls -lh
total 2.9M
drwxr-xr-x 3 sharmadeepesh sharmadeepesh 4.0K Feb 8 13:53 pkg
drwxr-xr-x 4 sharmadeepesh sharmadeepesh 4.0K Feb 8 13:52 src
drwxr-xr-x 7 sharmadeepesh sharmadeepesh 4.0K Feb 8 13:54 yay
-rw-r--r-- 1 sharmadeepesh sharmadeepesh 2.9M Feb 8 13:53 yay-git-10.1.2.r0.g7d849a8-2-x86_64.pkg.tar.zst

输出中使用字节 (B)、兆字节 (MB)、千兆字节 (GB) 和太字节 (TB) 的大小说明符。

列出隐藏文件

默认 ls 命令在输出中不包含隐藏文件。 要列出用户设置为隐藏的内容,请传递 -一种 使用 ls 命令标记。

ls -a

使用 grep 命令对 ls 进行管道化

grep 命令用于匹配遵循特定正则表达式的模式。 您可以将此命令与 ls 链接,以搜索系统中存在的文件。 在您的根目录中,键入:

ls | grep l

这将列出所有以 l 字符开头的文件和文件夹。 您还可以使用 grep 根据扩展名过滤文件。

按时间和日期对文件进行排序

要列出所有文件并根据创建/修改的时间和日期对它们进行排序,请使用 -t 与 ls 一起标记。

ls -t

按大小排序文件

-S 标志将允许您根据文件大小对文件和文件夹进行排序。

ls -S

默认情况下,文件将按降序排序(最大的文件在前)。 但是,您可以通过添加 r-S 旗帜。

ls -Sr

列出文件并将输出发送到文件

使用 > 字符,您可以将 ls 命令的输出发送到任何文件。

ls > ls-output.txt

稍后,您可以通过键入来读取新创建的文件的内容 猫 ls-output.txt 在您的终端中。

使用 ls 命令显示目录的内容

ls 命令是提供给 Linux 用户的最强大的命令之一。 为了充分利用终端中的命令,您可以尝试一起学习链接命令。 您甚至可以通过管道传输 mv 命令以使用 ls 移动文件。

熟悉 Linux 的第一个技巧是记住一些基本命令。 这肯定会帮助您在使用系统时变得更加高效和快速。