关于Bash / Shell脚本:如何(添加文本)而不是(删除)输出文件中的所有文本?

时间:2017-06-22 02:15:22

标签: bash sed

  

output.txt(原文脚本之前)   Apple手机   电话

     

input.txt

Samsung Gallaxy
Tablet
Samsung S7 mobile
Telephone
Oneplus3 mobile
Telephone

我使用这个命令: sed -n -e '/mobile/,/Telephone/ p' input.txt > output.txt

  

output.txt的

Samsung S7 mobile
Telephone
Oneplus3 mobile
Telephone
Apple mobile
Telephone

结果几近完美.. 但我需要output.txt末尾的4行,而不删除

> Apple mobile
> Telephone

请帮助:(

2 个答案:

答案 0 :(得分:1)

awk也会实现您的目标,

$ awk '/Telephone|mobile/{print}' Input.txt >> Output.txt
$ cat Output.txt
Apple mobile
Telephone    
Samsung S7 mobile 
Telephone 
Oneplus3 mobile 
Telephone

简要说明,

  • /Telephone|mobile/:搜索包含Telephonemobile的行,然后打印出来。

答案 1 :(得分:0)

使用grep

grep -E "(Telephone|mobile)" filename >>outputfilename