找到一种方法来重命名多个文件夹上的多个文件
文件夹,即我在以下多个文件夹中有一个名为“jobsforms.html.bak”的文件:
/home/sites/juk/jobsforms.html.bak
/home/sites/juan/jobsforms.html.bak
/home/sites/pedro/jobsforms.html.bak
/home/sites/luois/jobsforms.html.bak
我想重命名找到的所有文件:“jobsforms.html”我该怎么做。 我试图做到这一点。
find /home/sites -name "jobsform.html.bak" -exec bash -c 'mv "$1" "${1%/*}"/jobsform.html' -- {} \;
任何人都可以帮助我如何去做。 比你, 大卫
答案 0 :(得分:0)
您可以将find
的输出传递给awk
,使用sub
函数从文件名中删除子字符串:
find /home/sites -name "jobsforms.html.bak" | awk '{ori=$0; sub(/\.bak$/,"",$0); system("mv \""ori"\" "$0)}'