【发布时间】:2019-02-01 18:54:46
【问题描述】:
我有一个如下所示的文件:
[TEST]
Path1 = db/test/testdb
Path2 = db/real/db
[TEST2]
Path1 = db/test/testdb
Path2 = db/real/db
DataSizeMB = 1234
有什么方法可以让我对每个节进行 grep 以查看 DataSizeMB = 1234 是否存在?如果不是,请将其添加到该节中?
我尝试过的:
cat test.txt | awk 'BEGIN{RS=ORS="\n\n";FS=OFS="\n"}/DataSizeMB/'
它使用DataSizeMB 抓取所有节。我需要 grep 没有DataSizeMB 的所有节并添加该行。
示例输出:
[TEST]
Path1 = db/test/testdb
Path2 = db/real/db
DataSizeMB = 1234
[TEST2]
Path1 = db/test/testdb
Path2 = db/real/db
DataSizeMB = 1234
【问题讨论】:
-
grep "DataSizeMB = 1234" input_file怎么样? -
编辑问题
-
似乎与以下内容重复:stackoverflow.com/questions/16987648/…
标签: bash shell awk scripting grep