17 假设您所在的目录包含许多文件和许多子目录。 您要获取所有以字母“ d”开头的文件的目录列表。您输入 ls d* 您得到的大部分是子目录中的文件(尤其是子目录中以“ d”开头的文件)。 如何仅列出当前目录中的文件和目录名称? linux — dggoldst source
31 啊,我在手册页的六读处才发现它。这是一个不太合理的“目录”参数 ls -d d* — dggoldst source 6 您只花了29秒就重新阅读了手册页并写下了答案?那很快:-) — balpha 1 另外,ls -dd * /将仅显示目录。 — innaM 6 balpha-我在提交问题之前就发现了它,然后意识到,如果花了我这么长时间才弄清楚这个问题,我也可能会帮助将来的搜索者在此处发布q和a。 — dggoldst,2009年 3 很公平; 没有错。 — balpha 1 但是,CppLearner确实可以工作。尝试一下。 — dggoldst 2013年
10 我相信另一个有趣的解决方案是 ls | grep ^d 提供正则表达式的灵活性。 — 库尔 source 3 正则表达式的复杂性!;-) — 克里斯·纳瓦 1 这是一个有趣的解决方案,我喜欢使用正则表达式的想法,但是,如果您向ls添加其他参数,它将破坏。例如“ ls -l | grep ^ d” — dggoldst,2009年 正确,但并非所有参数。ls -a | grep“ ^ \”。将打印所有“隐藏”文件。 — 库尔 ls flags使用此方法时其他方法不起作用。例如ls -ltr | grep ^d不起作用。@dggoldst答案中建议的那个却可以。 — hitesh israni
3 找 。-maxdepth 1-名称d * -type f 好吧,在这里使用find有点矫kill过正。一点点。 — 詹姆斯·波利 source 1 但是它帮助我列出了特定用户的所有直接目录:find /home/ -maxdepth 1 -type d -user www-data。因此,谢谢,并+1 — 西里尔·N。
1 ls -ld:它将给出目录列表,而不下降到子目录。 例: ls -ld Cust* 此命令将提供以开头的文件和目录的列表Cust。 — 切拉杜赖 source 1 这基本上与五岁接受的答案相同。 — 斯科特