仅在输出发生变化时才从控制台提取信息

时间:2014-10-24 15:46:59

标签: linux bash awk sed

这是我想要完成的事情:

App以cron运行并检查可用价格,

./checkprice | grep price

然后返回:

run at October 15
price item1 19.99
price item2 2.99
price item3 3.99

run at October 16
price item1 19.49
price item2 2.99
price item3 3.99

您看到第2项的两个条目的原因是因为价格变动

如何将新价格输入到具有以下格式的文件中:

item1
19.99

item2
2.99

item3
3.99

1 个答案:

答案 0 :(得分:0)

sed是单行编辑器,因此您必须使用awk或更改文件格式。我会亲自更改文件格式并执行类似的操作。

item1 19.99
item2 4.99

然后当你得到新的价格时,你可以做这样的事情。

cmd="sed -i 's/$item.*/$item $price/' file"
eval $cmd