删除多个文件中的备份附录表单文件名(Linux)
Deleting backup appendix form file name in multiple files (Linux)
我最近从 windows 升级到 Linux(基于 Debian),并且我从备份驱动器导入了所有文件。问题是现在所有的文件都是用原来的名字+一对括号里有备份日期的附录命名的。
Example:
index (2017_12_01 15_56_03 UTC).html
Instead of index.html
如何从所有文件中删除备份添加的信息?
我正在寻找一个可以遍历目录中所有文件并删除括号部分的函数。
或者有什么方法可以在没有它的情况下重新导入?
shell解决方案,假设第一个(
之后的所有内容都应该替换为.html
,是
for f in *.html; do
mv "$f" "${f%%\(*}.html"
done
很容易扩展为递归工作:
find . -name '*.html' |
while read f; do
mv "$f" "${f%%\(*}.html"
done
我最近从 windows 升级到 Linux(基于 Debian),并且我从备份驱动器导入了所有文件。问题是现在所有的文件都是用原来的名字+一对括号里有备份日期的附录命名的。
Example:
index (2017_12_01 15_56_03 UTC).html
Instead of index.html
如何从所有文件中删除备份添加的信息? 我正在寻找一个可以遍历目录中所有文件并删除括号部分的函数。
或者有什么方法可以在没有它的情况下重新导入?
shell解决方案,假设第一个(
之后的所有内容都应该替换为.html
,是
for f in *.html; do
mv "$f" "${f%%\(*}.html"
done
很容易扩展为递归工作:
find . -name '*.html' |
while read f; do
mv "$f" "${f%%\(*}.html"
done