在一个文件的全局中,我想查找以RewriteEngine on
RewriteCond %{HTTP_HOST} ^Domainyoustayat.tld
RewriteRule ^(.*) http://Domain-you-want-to-show-on-above.tld/$1 [P]
开头的所有字符串,并将.git#v
中的字符串部分替换为下一个字符串v
。< / p>
所以,f.e。如果我有"
- 我希望migrations.git#v1.1.1",
找到它并将.git#v
替换为v1.1.1
。关键是版本号会因不同的事件而有所不同,这就是我需要依靠develop
部分找到这些部分的原因。
到目前为止我已经得到了这个:
.git#v
但我知道这还不够,因为它只会用sed -i -- 's/.git#v/.git#develop/g' package.json
替换整个.git#v
。
答案 0 :(得分:2)
echo 'migrations.git#v1.1.1"' |sed -r 's/\.git#v[^"]+"/\.git#develop/g'
migrations.git#develop
如果您不想使用-r
:+
符号需要处理。
sed 's/\.git#v[^"]\+"/\.git#develop/g'
migrations.git#develop
awk
解决方案,使用gsub
:
echo 'migrations.git#v1.1.1"' |awk '{gsub(/.git#v[^"]+"/,".git#develop")}1'
migrations.git#develop