我可以从以下位置访问 tar.gz 文件
./parent/subfolder/tar_file_folder/*tar.gz
我想找到它们并将它们移动到 ./parent/ 目录中,因此向上一级。但是,有几个子文件夹和 tar_file_folders。因此,我想从父文件夹中调用我的命令。
我已经尝试过这个命令行:
cd ./parent
find -name '*.tar.gz' -exec mv {} /path/to/single/target/directory \;
但是,我不太确定如何指定向上一级的路径。有什么帮助吗?
两个路径示例,在这种情况下,tar 文件必须移动到 ./AU-ASM 文件夹或 ./AR-Vir/ 文件夹:
./AU-ASM/[email protected]/LT51030752011211-SC20161014133947.tar.gz
./AR-Vir/[email protected]/LT51030751995263-SC20161014133510.tar.gz’
这是 tar.gz 存储位置的示例:
./Landsat_Data/AR-Vir/[email protected]/*tar.gz
命令行需要从 ./Landsat_Data/ 目录运行
答案1
您可以迭代 tar 文件并将它们移动到父目录“..”,如下所示:
for tar in $(find path -name '*.tar.gz'); do mv $tar $(dirname $tar)/..; done