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