2016-02-25 110 views

回答

4
for f in *; do 
    new_f=${f##_*_} 
    echo mv -- "$f" "$new_f" 
done 

查看上面的输出,如果命令看起来不错,请删除echo并再次运行。

${f##_*_}从值$f中删除匹配模式_*_的最长前缀。

+0

谢谢@chepner! 'mv'后的'--'是什么意思? – alwc

+1

只是一个预防措施。假设您有一个名为'-i'的文件。如果没有'--',它将被视为'mv'选项。有了它,任何跟随它的东西都将被严格视为论证,而不是一种选择。最有可能的是,你不需要它,但它不会受伤。 – chepner

相关问题