gpt4 book ai didi

regex - 使用正则表达式重命名命令不起作用

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:29:40 25 4
gpt4 key购买 nike

我想使用正则表达式重命名文件。

例如:将文件 中的模式 Mod[0-9][0-9] 替换为 Mod[0-9][0-9]_temp >N_Mod10_m.bdfN_Mod11_n.bdf 使用以下命令:

rename 's/\(.*Mod[0-9][0-9]\)\(.*\.bdf\)/$1_temp$2 *

但这行不通。

最佳答案

您需要使用非贪婪模式:(.*?)。此外,添加缺少的引号 '

我想,这就是您要查找的内容:rename 's/(.*?Mod[0-9][0-9])(.*?\.bdf)/$1_temp$2' *

看看Rename Multiple Files in a Shell PromptRenaming files to have lower case extensions with rename .

对于 CentOS,您可以像这样将 _temp 插入到文件名中:

for i in *; do j=`echo $i | sed -r 's/(.*?Mod[0-9][0-9])(.*?\.bdf)/\1_temp\2/g'`; mv "$i" "$j"; done

关于regex - 使用正则表达式重命名命令不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29429463/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com