我查看了其他答案,但它们似乎不太符合我想要做的事情,所以如果我遗漏了什么并且这是一个重复的问题,请原谅我。
我正在尝试移动子文件夹中的文件。这是当前的文件夹树:
Parent_folder
| |SubfolderA
| | |Sub_subfolderAA
| | | |FileAAA.abc
| | | |FileAAB.abc
| | | |FileAAB.abc
| | |Sub_subfolderAB
| | | |FileABA.abc
| | | |FileABB.abc
| | | |FileABB.abc
| |SubfolderB
| | |Sub_subfolderBA
| | | |FileBAA.abc
| | | |FileBAB.abc
| | | |FileBAB.abc
| | |Sub_subfolderBB
| | | |FileBBA.abc
| | | |FileBBB.abc
| | | |FileBBB.abc
在这个例子中,我希望能够运行一个命令,将 Sub_subfolders 内的所有文件移动到其父子文件夹中,并对父文件夹中的所有子文件夹重复该操作。
答案1
如果子文件夹中只有文件(没有文件夹),则以下代码行应该可以执行此操作:
cd Parent_folder
for folder in * #loop over all folders in the Parent_folder
do
cd $folder
mv */* . # move all the files inside folder to their parent subfolder
cd .. # go back to Parent_folder
done