繁体   English   中英

Linux命令:目录中的目录

[英]Linux Command: Directory inside a directory

所以我有一个目录 - 让我们说/ dir /。 在其中我有这些文件夹 - / dir / fold1 / / dir / fold2 / / dir / fold3 /

这些文件夹中的每一个(fold1,2,3)都可能包含一个名为foo的文件夹。 我想列出dir中的所有文件夹,里面有一个名为foo的文件夹。

谢谢!

用这个:

find dir -type d -name foo

所以...... dir是你想要搜索的目录。

-type是他们所寻找的类型: d irectory, f ile或l ink。

-name是您要查找的内容的名称,区分大小写。 如果您希望它不区分大小写,可以使用-iname

关于什么

ls -R /dir | grep -i foo

打破我们的命令: ls -R =递归列出文件(包括目录

grep -i foo =将采用上面的命令并过滤它不区分大小写以显示'foo'的任何实例。

ls -ld /dir/*/foo | grep ^d

我提议:

find /dir -name foo -type d -exec dirname {} \; | xargs ls

但是如果任何目录中有空格,这不起作用。

如果要列出在第一级只包含名为foo的子目录的所有目录,则可以执行此操作

for x in /dir/*; do
  [ -d $x/foo ] && ls $x
done

[ ... ]构造是shell内置test的缩写。 -d $x/foo测试$x/foo存在并且是一个目录。 如果是,则执行ls $x

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM