如何将文件夹中的每个文件移动并重命名到顶级文件夹? [linux shell] [bash]
How to move and rename each file in folder to top folder? [linux shell] [bash]
我正在尝试在 linux shell 中创建一个简单的脚本, 在文件夹 X 中遍历每个文件夹,重命名文件在那里找到,并将它们移动到根(folderX)文件夹....
我猜逻辑有点像这样:
-0> //in folderX
-0>for each folder == $folderY //just the last part, what comes after ~/folderX/[this]
-1> cd ./$folderY
-1> for each fileInY == $fileInY //just the last part, what comes after ~/folderX/folderY/[this.something]
-2> rename fileInY = "$folderY - $fileInY"
-1> move * to folderX
-1> cd..
(但欢迎提出建议和不同的方法)
提前致谢!
-Gabix
folder="folderX"
find "$folder" -type f -exec cp '{}' '{}'.bak \; -exec mv '{}'.bak "$folder" \;
将根 folder/directory 设置在一个变量文件夹中,然后使用它 运行 查找并执行。在目录结构中查找文件先将文件名复制到文件名后跟“.bak”然后将文件从目录移动到根目录folder/directory
我正在尝试在 linux shell 中创建一个简单的脚本, 在文件夹 X 中遍历每个文件夹,重命名文件在那里找到,并将它们移动到根(folderX)文件夹.... 我猜逻辑有点像这样:
-0> //in folderX
-0>for each folder == $folderY //just the last part, what comes after ~/folderX/[this]
-1> cd ./$folderY
-1> for each fileInY == $fileInY //just the last part, what comes after ~/folderX/folderY/[this.something]
-2> rename fileInY = "$folderY - $fileInY"
-1> move * to folderX
-1> cd..
(但欢迎提出建议和不同的方法)
提前致谢! -Gabix
folder="folderX"
find "$folder" -type f -exec cp '{}' '{}'.bak \; -exec mv '{}'.bak "$folder" \;
将根 folder/directory 设置在一个变量文件夹中,然后使用它 运行 查找并执行。在目录结构中查找文件先将文件名复制到文件名后跟“.bak”然后将文件从目录移动到根目录folder/directory