用sed

时间:2016-10-23 16:09:42

标签: bash replace sed

在我的配置文件中,我有一个资产版本,如:

templating:
    engines: ['twig']
    assets_version: 20161021

当我计划发布新版本时,我想在新版本的bash脚本中替换当前版本(在本例中为20161021)(例如,使用当前日期)。

我已经搜索了很长时间的sed使用示例,但没有成功。

我的代码:

sed -e 's/(::\s+assets_version:)[^=]*$/\1 assets/' app/config/config.yml

但是控制台告诉我:sed:1:" s /(:: \ s + assets_version:...":\ 1未在RE中定义

有人可以帮忙吗?

1 个答案:

答案 0 :(得分:1)

VERSION=20161101
sed -i "s/assets_version.*/asserts_version: ${VERSION}/" app/config/config.yml

-i更改同一文件

assets_version.*匹配assets_version并且该行上的任何其他字符都会替换它们。