gpt4 book ai didi

sed - 如何使用sed替换ini文件中的值?

转载 作者:行者123 更新时间:2023-12-01 03:58:40 26 4
gpt4 key购买 nike

此示例来自 devstack 脚本。

sed -i -e "/^\[$section\]/,/^\[.*\]/ s|^\($option[ \t]*=[ \t]*\).*$|\1$value|" "$file"

谁能解释一下这是怎么回事 sed替换命令有效吗?

我懂一些基本的 sed机制,但这对我来说似乎很复杂。

最佳答案

-i 选项在适当的位置编辑文件 $file。

地址范围

要匹配的行范围的语法是/pattern1/,/pattern2/
该脚本搜索行的范围,从包含行首 $section 中的字符的第一行(注意使用脱字符)到表示至少包含一个字符的行的 ^[.*]。

代换

对于与上述范围说明符匹配的所有行,执行替代命令 s/pattern/replacement/命令。
注意使用 |分隔替换命令 - s|pattern|replacement|。

要匹配的模式使用插入符号 (^) 从行的开头开始。

节 (....) 位于被称为\1 的替换节中。

在 (...) 部分是字符串 $section 后跟可能有多个空格或制表符 - [\t]* 表示没有或多个制表符或空格。后跟一个 '=' 字符,可能还有更多的空格或制表符。 .*$ 将匹配任意数量的字符到行尾。

替换\1$value 是前面提到的包含 (...) 的部分,后跟 $value 中的值。

哼!

关于sed - 如何使用sed替换ini文件中的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15184243/

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