【发布时间】:2013-09-23 01:57:21
【问题描述】:
这个问题扩展了我的上一个问题 (Search for specific line of text file, replace up to a certain character)。在用户 @anubhava 的帮助下,我能够搜索以 dataspecs 开头的行,并将其转换为
dataspecs v1 v2 v3 v4 v5 ! blah到
dataspecs $new_val ! blah
但是,我现在需要能够保留变量 v1 v2 v3(我不知道它们的实际值),并将 v4 和 v5 替换为 bash 变量 $new_v4和$new_v5。所以我的新行现在看起来像这样:
dataspecs v1 v2 v3 new_v4 new_v5 ! blah
【问题讨论】:
-
我想我要么需要
sed来 (1) 告诉 sed 找到dataspecs的第一个实例,为该行中的每个单词分配一个数字,然后在“单词”6 和7,或者 (2) 告诉 sed 找到dataspecs的第一个实例和空白的第四个实例,并将空白和!之间的所有内容子化。
标签: bash sed awk text-processing