我需要通过命令行自动组织大约1500个文件夹。
我正在寻找一种方法来搜索包含/lib/file.php
的所有文件夹 - 如果file.php
文件夹中确实存在lib
,我需要根文件夹(比lib高一级) )进入一个新目录。
我知道如何搜索包含/lib/file.php
的所有文件夹,但无法弄清楚如何将它们自动移动到新文件夹中。例如,如果存在/test123/lib/file.php
,则应将test123
文件夹移动到新文件夹中...
答案 0 :(得分:0)
像这样的东西,也许:
for d in *
do
if [[ -r "${d}/lib/file.php" ]]
then
mv "${d}" "/some/new/place/."
fi
done
答案 1 :(得分:0)
尝试使用find
,sed
,xargs
和mv
find -type f -wholename '*/lib/file.php' | sed 's:/lib/file\.php$::' | xargs -I dirs mv dirs /path/to/new/dir/