这可以由sed完成吗?

时间:2010-03-18 10:43:59

标签: bash

Hiall,我需要处理一个如下文件:

1234
4343
5345345
53453
4343

我想要做的是对每行的编号执行follow命令:

grep $num1 ./somepath  #get num1_res

然后将$ num1和$ num1_res写入另一个文件:

1234 32
4343 234
5345345 349
53453 78
#...etc

sed有什么好的解决方案吗?还是其他一些简单的方法?

感谢。

3 个答案:

答案 0 :(得分:4)

你的要求有点模糊,但这应该可以帮到你:

while read value
do
  echo "$value $(grep "$value" somepath)"
done < somefile

答案 1 :(得分:1)

你可以使用awk。 (请尽量在下次更清楚地描述您的问题)。基于对你想要的猜测。

awk 'FNR==NR{
  list[$0]
  next
}
{
  for(i in list){
    if ( $0~i){
      print i,$0
    }
  }
}
' thelist ./somepath/myfile

答案 2 :(得分:0)

grep -f file_with_num1_vals file_with_num1_res_vals