用于转换列表的Ksh脚本

时间:2011-05-03 20:39:02

标签: unix ksh


在应用一些命令后,我有一个数据集如下

graph_name=abc
group_name=def
factory=xyz
export a=1
export b=2
export c=3

现在我怎样才能获得以下输出

graph_name=abc
export a=1
export b=2
export c=3

我需要所有导出语句以及只包含record_name的记录。

4 个答案:

答案 0 :(得分:1)

一个简单的grep命令:

grep -w -e "graph_name=" -w -e "export" tmp FILENAME

答案 1 :(得分:1)

sed -n -e '/^graph_name=/p' -e '/^export /p' your-file

默认不打印(-n);然后显式打印那些符合你想要的行。

答案 2 :(得分:0)

一些awk解决方案:

awk '/^graph_name=/ || /^export /' filename
awk '/^(graph_name|export)\>/' filename
awk -F '[= ]' '$1 == "graph_name" || $1 == "export"' filename

答案 3 :(得分:0)

尝试使用egrep匹配由管道符号分隔的多个模式中的任何一个。在这里,我正在寻找以“graph_name”或“export”开头的行:

egrep "^graph_name|^export" your_file