【发布时间】:2012-11-16 11:43:29
【问题描述】:
我正在使用 RHEL。在我当前的文件夹中有子文件夹。我需要找到文件在子文件夹中的位置。这些文件可能在一个或多个中。
我正在使用它,但它会无限迭代:
for f in ./{Failed,Loaded,ToLoad}; do find -name 'file'; done
如何做到这一点?
【问题讨论】:
我正在使用 RHEL。在我当前的文件夹中有子文件夹。我需要找到文件在子文件夹中的位置。这些文件可能在一个或多个中。
我正在使用它,但它会无限迭代:
for f in ./{Failed,Loaded,ToLoad}; do find -name 'file'; done
如何做到这一点?
【问题讨论】:
你的 for 循环的语法不正确。
应该是:
for f in Failed Loaded ToLoad
do
find "$f" -name 'file'
done
但你不需要循环。可以这样简单地完成:
find Failed Loaded ToLoad -name 'file'
【讨论】:
尝试这样做:
find {Failed,Loaded,ToLoad} -name 'file'
如果{Failed,Loaded,ToLoad} 真的是一些目录。
【讨论】:
find 可以为源目录接受多个参数。所以,你可以使用:
find Failed Loaded ToLoad -name 'file' ...
您不需要循环。如果您希望 find 查看您的子目录的子集,这会很方便。
【讨论】: