我有一些文件名如下:
e2ed150l145l245St01-Oxs_MinDriver-Magnetization-00-0002105.omf
e2ed150l145l250St01-Oxs_MinDriver-Magnetization-00-0002167.omf
e2ed150l145l255St01-Oxs_MinDriver-Magnetization-00-0001519.omf
e2ed150l145l260St01-Oxs_MinDriver-Magnetization-00-0001841.omf
e2ed150l145l265St01-Oxs_MinDriver-Magnetization-00-0002730.omf
e2ed150l145l270St01-Oxs_MinDriver-Magnetization-00-0002788.omf
e2ed150l145l275St01-Oxs_MinDriver-Magnetization-00-0001616.omf
e2ed150l150l250St01-Oxs_MinDriver-Magnetization-00-0002386.omf
e2ed150l150l2100St01-Oxs_MinDriver-Magnetization-00-0015577.omf我想把它们重命名为:
e2ed150l145l245St01.omf
e2ed150l145l250St01.omf
e2ed150l145l255St01.omf
e2ed150l145l260St01.omf
e2ed150l145l265St01.omf
e2ed150l145l270St01.omf
e2ed150l145l275St01.omf
e2ed150l150l250St01.omf
e2ed150l150l2100St01.omf在一些类似的论坛之后,我使用了几个命令,包括:
rename 's/-Oxs_MinDriver-Magnetization-00-[0-9]*//g' e2e*.omf -v但这不起作用。请给我建议。
发布于 2014-08-29 02:08:49
您还可以使用mv:
for i in e2e*.omf; do
mv $i ${i%%-*}.omf
done或
for i in e2e*.omf; do
mv $i ${i//-*/}.omf
done折叠成一行:
for i in e2e*.omf; do mv $i ${i%%-*}.omf; done如果目标已经存在,请使用mv -f
https://stackoverflow.com/questions/25560444
复制相似问题