gpt4 book ai didi

linux - 在 Linux 中使用 ls 仅显示目录

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:02:58 26 4
gpt4 key购买 nike

我正在熟悉 Linux (Debian 9)。但是,我设法让自己对 ls 命令手册感到困惑。我做了以下简单的测试设置:

meouser:~/triv_dir$ ls -laR
.:
total 24
drwxr-xr-x 4 meouser meouser 4096 Mar 27 15:42 .
drwxr-xr-x 19 meouser meouser 4096 Mar 27 15:41 ..
drwxr-xr-x 4 meouser meouser 4096 Mar 27 15:55 a
drwxr-xr-x 2 meouser meouser 4096 Mar 27 15:42 b
-rw-r--r-- 1 meouser meouser 6 Mar 27 15:44 c
-rw-r--r-- 1 meouser meouser 6 Mar 27 15:44 d

./a:
total 24
drwxr-xr-x 4 meouser meouser 4096 Mar 27 15:55 .
drwxr-xr-x 4 meouser meouser 4096 Mar 27 15:42 ..
-rw-r--r-- 1 meouser meouser 4 Mar 27 15:50 aa
-rw-r--r-- 1 meouser meouser 4 Mar 27 15:50 ab
drwxr-xr-x 2 meouser meouser 4096 Mar 27 15:55 a_sub_1
drwxr-xr-x 2 meouser meouser 4096 Mar 27 15:55 a_sub_2

./a/a_sub_1:
total 12
drwxr-xr-x 2 meouser meouser 4096 Mar 27 15:55 .
drwxr-xr-x 4 meouser meouser 4096 Mar 27 15:55 ..
-rw-r--r-- 1 meouser meouser 4 Mar 27 15:55 aaa

./a/a_sub_2:
total 8
drwxr-xr-x 2 meouser meouser 4096 Mar 27 15:55 .
drwxr-xr-x 4 meouser meouser 4096 Mar 27 15:55 ..

./b:
total 16
drwxr-xr-x 2 meouser meouser 4096 Mar 27 15:42 .
drwxr-xr-x 4 meouser meouser 4096 Mar 27 15:42 ..
-rw-r--r-- 1 meouser meouser 4 Mar 27 15:50 ba
-rw-r--r-- 1 meouser meouser 4 Mar 27 15:50 bb

我想查看所有目录名及其子目录,但不查看文件名。也就是说,我想要像 ls --insert-options-here 这样的输出是上面的这个子集:

.:
total 24
drwxr-xr-x 4 meouser meouser 4096 Mar 27 15:42 .
drwxr-xr-x 19 meouser meouser 4096 Mar 27 15:41 ..
drwxr-xr-x 4 meouser meouser 4096 Mar 27 15:55 a
drwxr-xr-x 2 meouser meouser 4096 Mar 27 15:42 b

./a:
total 24
drwxr-xr-x 4 meouser meouser 4096 Mar 27 15:55 .
drwxr-xr-x 4 meouser meouser 4096 Mar 27 15:42 ..
drwxr-xr-x 2 meouser meouser 4096 Mar 27 15:55 a_sub_1
drwxr-xr-x 2 meouser meouser 4096 Mar 27 15:55 a_sub_2

根据ls手册,应该通过ls -ldR来实现。

meouser:~/triv_dir$ man ls

-a, --all
do not ignore entries starting with .

-d, --directory
list directories themselves, not their contents

-l use a long listing format

-R, --recursive
list subdirectories recursively

但实际情况是这样的:只显示了 '.'

meouser:~/triv_dir$ ls -ldR
drwxr-xr-x 4 meouser meouser 4096 Mar 27 15:42 .

手册中缺少什么?

我从 https://stackoverflow.com/a/29277454/11199684 注意到这可以通过找到。 -maxdepth 2 -type d -print这令人印象深刻,但它提供的信息少于上面的 ls 输出。此外,我可能事先不知道正确的最大深度?最重要的是,为了将来的需要,我实际上有兴趣从手册中自学。不胜感激。

最佳答案

-d 选项适用于作为输入给出的 [FILE],在你的情况下,因为没有给出,你会回到默认的:当前目录.递归性不适用,因为没有返回目录。

要使用 find 命令获得与 ls 相同的输出,您可以组合它们:

find . -type d -exec ls -ld {} \;

关于linux - 在 Linux 中使用 ls 仅显示目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55380172/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com