找到子目录中不包含文件的主目录名

问题描述 投票:-1回答:1

我有三个文件夹作为test1, test2,test3。在这三个文件夹下我有两个文件夹作为常见的dir1,dir2。以上三个父文件夹中的每一个都将这两个作为子文件夹。我将在任何一个父目录中的file.txt中有一个文本文件(dir1)。

如果在file.txt子文件夹中不存在dir1,是否有find或grep单行命令将父目录名称作为输出?

例:

ls test1 o/p: dir1, dir2

ls test2 o/p: dir1/file.txt,dir2

ls test3 o/p: dir1/file.txt,dir2

我需要一个命令,它将test1作为输出

linux shell command
1个回答
0
投票

像下面这样的东西应该做你需要的:

for f in test*/dir1/ 
do 
  [[ $(find "$f" -name "file.txt") ]] || echo `dirname "$f"`  
done
© www.soinside.com 2019 - 2024. All rights reserved.