【发布时间】:2019-09-30 21:32:42
【问题描述】:
我有一个文件名格式如下的目录:
DAM3D002_P_DAPedit.jpg
我需要将所有文件名重命名为:
DAM3D002.jpg
我正在使用 Linux/Ubuntu 18.04
这是我在 bash 上尝试过的:
for f in *.jpg; do mv "$f" "${f%_*.jpg}.jpg" ; done
我期望输出:
DAM3D002.jpg
但我得到了:
DAM3D002_P.jpg
【问题讨论】:
-
你需要
"${f%%_*.jpg}.jpg"
标签: bash shell replace substring