![如何用模式重命名文件集](https://linux22.com/image/861830/%E5%A6%82%E4%BD%95%E7%94%A8%E6%A8%A1%E5%BC%8F%E9%87%8D%E5%91%BD%E5%90%8D%E6%96%87%E4%BB%B6%E9%9B%86.png)
我有以下名称的文件:
P50_FR_8_q2_滚动.csv
这里值 50 和 8 需要重命名 & 结果应该是这样的:
P21_FR_3_q2_滚动.csv
我尝试了几个类似的方法,rename 's/\d{3}(\d{*})\.csv$P21_$1.csv' *.csv
但没有成功。(看来我对 Linux 正则表达式真的很差)
我知道 50->21 和 8->3 这两个值。但起始值和结束值并不总是相同的数字大小。
答案1
尝试
rename -n 's/50(_.*)_8/21$1_3/' *.csv
该-n
标志不执行任何重命名。您可以通过这种方式测试模式。删除它以实际执行重命名。