网站搜索

10 个有用的“ls”命令面试问题 - 第 2 部分


这里继续 ls 命令的遗产是关于 Listing 命令的第二篇采访文章。该系列的第一篇文章得到了Howtoing社区的高度赞赏。如果您错过了本系列的第一部分,您可能想访问:

  1. 关于“ls”命令的 15 个面试问题 – 第 1 部分

本文以通过示例深入了解 ls 命令的方式进行了很好的介绍。我们在撰写文章时格外小心,以使其保持简单易懂并充分服务于目的。

1. 您应该以长列表格式列出目录的内容,但不打印文件的作者和所属组的名称。还显示输出的差异。

a. ls 命令与开关 (-l) 一起使用时以长列表格式列出文件名。

ls -l

b. ls 命令以长列表格式列出文件名以及作者文件所属的名称,当与开关 (–author) 和开关 ( -l)。

ls -l --author

c. ls 命令与开关 (-g) 一起使用时列出文件名,不包含其所有者的名称。

ls -g

d. ls 命令在与开关 (-G) 和开关 ( -l )。

ls -Gl

2. 以人类可读的格式打印当前目录中文件和文件夹的大小。你将如何做到这一点?

好吧,我们需要将开关 -h (人类可读)与开关 (-l) 和/或 (-s) 一起使用命令 ls 以获得所需的输出。

ls -hl

ls -hs

注意:选项-h使用1024的幂(计算标准)并输出大小文件和文件夹的单位为KMG

3. 如果开关 (-h) 输出大小为 1024 的幂,这是标准的,那么 ls 命令还支持哪些幂值?

存在一个开关-si,它与开关-h类似。唯一的区别是开关 -si 使用 1000 的幂,而开关 -h 使用 1024 的幂。

ls -si

它还可以与开关 -l 一起使用,以长列表格式输出 1000 次方的文件夹大小。

ls -si -l

4. 您应该打印以逗号分隔的目录内容。是否可以?可以以长列表格式完成吗?

是的! Linux ls 命令与开关(-m)一起使用时可以输出以逗号分隔的目录内容。由于此逗号分隔条目是水平填充的,因此 ls 命令在垂直列出内容时无法用逗号分隔内容。

ls -m

当以长列表格式使用时,开关 -m 变得毫无用处。

ls -ml

5. 有没有办法把一个目录的内容倒过来打印?即,以相反的顺序。

是的!使用开关-r可以轻松实现上述情况。开关‘-r’反转输出的顺序。它还可以与开关-l(长列表格式)一起使用。

ls -r

ls -rl

6. 给你一个递归打印子目录的情况。你将如何实现这种情况?请注意,只有子目录,没有文件。

好的!当与命令 ls 一起使用时,使用开关 -R 非常容易。它可以进一步与其他选项分组,例如 -l(长列表)和 -m(逗号分隔)等。

ls -R

7. 如何根据大小对文件进行排序?

Linux 命令行选项 -S 与 ls 一起使用时会给出所需的输出。根据大小按降序对文件进行排序,最大的文件列在最前面,最小的文件列在最后。

ls -S

根据大小按降序对文件进行排序,最小的文件列在最前面,最大的文件列在最后。

ls -Sr

8. 列出目录的内容,每行一个文件中不包含任何附加信息。

开关 -1 在这里发挥了作用。带有开关 -1 的 ls 命令输出目录内容,每行一个文件,没有附加信息。

ls -1

9. 给你一种情况,你必须在标准输出上打印用双引号括起来的目录内容。你将如何做到这一点?

存在一个选项 -Q (quote-name),它输出用双引号括起来的 ls 的内容。

ls -Q

10. 您正在一个包含大量文件和文件夹的目录中工作。您需要在目录之前打印文件夹的名称。你将如何得到这个?
ls --group-directories-first

目前为止就这样了。我们将提出本系列文章的下一部分,关于古怪的“ls”命令技巧。在此之前请继续关注并连接到 Howtoing。不要忘记在下面的评论部分向我们提供宝贵的反馈。喜欢并分享我们并帮助我们传播!