【发布时间】:2009-08-30 15:33:42
【问题描述】:
我在 bash 脚本中有一个需要替换的变量。该行中唯一的常量是它将以“_(*x)xxxp.mov”结尾。其中 x 是数字,长度可以是 3 或 4。例如,我知道如何替换该值,但前提是它是一个常量:
echo 'whiteout-tlr1_1080p.mov' | sed 's/_[0-9]*[0-9][0-9][0-9]p.mov/_h1080p.mov/g'
如何将正则表达式匹配转移到替换行?
编辑:
好的,我刚刚了解到 grep 只能打印匹配项,这样做会更好吗?
urltrail=$(echo $@ | grep -o [0-9]*[0-9][0-9][0-9]p.mov)
newurl=$(sed 's/$urltrail/h$urltrail/g')
嗯,尝试了上述方法,但我遇到了问题。
【问题讨论】: