经典指数          
原因
2714
浏览数
0
收藏数
 

以下哪些命令可以打印文件(demo.log)中包含ERP的行到标准输出()
  • sed '/ERR/a\' demo.log
  • sed '/ERP/p' demo.log
  • sed '/ERP/d' demo.log
  • sed -n '/ERP/p' demo.log

     举报   纠错  
 
切换
1 个答案

答案:D

sed是非交互式的编辑器。它不会修改文件,除非使用shell重定向来保存结果。默认情况下,所有的输出行都被打印到屏幕上

sed编辑器逐行处理文件(或输入),并将结果发送到屏幕。具体过程如下:首先sed把当前正在处理的行保存在一个临时缓存区中(也称为模式空间),然后处理临时缓冲区中的行,完成后把该行发送到屏幕上。sed每处理完一行就将其从临时缓冲区删除,然后将下一行读入,进行处理和显示。处理完输入文件的最后一行后,sed便结束运行。sed把每一行都存在临时缓冲区中,对这个副本进行编辑,所以不会修改原文件。

然后回到本题中,

 -n 取消默认的输出,从而重定向为ERP输出

-p 打印行

最后是filename文件名

 
切换
撰写答案