find ./ -name "*.sh" | sed 's:\([^/]*\)\(\.sh\):\1\2 \/webapp\/shell\/\1\.bak:g' | xargs -n 2 cp
find ./ -name "*.sh" -exec mv {} {}.bak \;
本文介绍了一种使用find、sed、xargs及cp命令来查找并批量备份特定目录下所有.sh文件的方法,并通过-exec选项配合mv命令实现文件的重命名。此过程能够高效地完成大量文件的操作。
find ./ -name "*.sh" | sed 's:\([^/]*\)\(\.sh\):\1\2 \/webapp\/shell\/\1\.bak:g' | xargs -n 2 cp
find ./ -name "*.sh" -exec mv {} {}.bak \;

被折叠的 条评论
为什么被折叠?
