使用shell脚本删除两个下划线之间的所有字母

3mpgtkmj  于 2022-11-16  发布在  Shell
关注(0)|答案(1)|浏览(178)

我的目录有一个类似_3vaca3424434_1-lecture-introduction.pdf的文件名列表,我想将其重命名为1-lecture-introduction.pdf。我该怎么做?

uqxowvwt

uqxowvwt1#

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

查看上面的输出,如果命令正确,请删除echo并再次运行。
${f##_*_}$f的值中删除与模式_*_匹配的最长前缀。

相关问题