首页 > 试题广场 >

以下哪个命令可以打印文件(demo.log)中包含ERP的行

[单选题]
以下哪些命令可以打印文件(demo.log)中包含ERP的行到标准输出()
  • sed '/ERR/a\' demo.log
  • sed '/ERP/p' demo.log
  • sed '/ERP/d' demo.log
  • sed -n '/ERP/p' demo.log
推荐
D
sed命令用于行的新增/删除, 行的替换/显示, 搜寻并替换, 直接修改文件。
-n:使用安静(silent)模式。在一般 sed 的用法中,所有来自 STDIN 的数据一般都会被列出到屏幕上。但如果加上 -n 参数后,则只有经过 sed 特殊处理的那一行才会被列出来。
p:打印,将某个选择的数据印出来。通常 p 会与参数 sed -n 一起用
d:删除
a:新增
编辑于 2015-01-30 10:19:09 回复(1)
答案:D
sed是非交互式的编辑器。它不会修改文件,除非使用shell重定向来保存结果。默认情况下,所有的输出行都被打印到屏幕上
sed编辑器逐行处理文件(或输入),并将结果发送到屏幕。具体过程如下:首先sed把当前正在处理的行保存在一个临时缓存区中(也称为模式空间),然后处理临时缓冲区中的行,完成后把该行发送到屏幕上。sed每处理完一行就将其从临时缓冲区删除,然后将下一行读入,进行处理和显示。处理完输入文件的最后一行后,sed便结束运行。sed把每一行都存在临时缓冲区中,对这个副本进行编辑,所以不会修改原文件。
然后回到本题中,
 -n 取消默认的输出,从而重定向为ERP输出
-p 打印行
最后是filename文件名
发表于 2015-01-28 13:28:49 回复(5)
sed -n :只显示sed匹配到的行。其余行不显示
p代表是打印行
综合以上两个条件,答案D
发表于 2016-06-20 20:24:40 回复(0)
打印文件(demo.log)中包含ERP的行到标准输出。
sed -n '/ERP/p' demo.log
sed是非交互式的编辑器。它不会修改文件,除非使用shell重定向来保存结果。
-n:使用安静(silent)模式。默认情况下,所有的输出行都被打印到屏幕上。
-p:打印,将某个选择的数据印出来。通常 p 会与参数 sed -n 一起用。
-d:删除
-a:新增

Vi编辑器中,怎样将字符AAA全部替换成yyy?
s/AAA/yyy/g
s:取代,通常 s 动作可以搭配正规表示式。例如 1,20s/old/new/g!
g:是行内进行全局替换。

示例:
sed 's/aaa/bbb/'  filea   将filea中的第一个aaa替换为bbb;
sed 's/aaa/bbb/g'  filea  将filea中的所有的aaa替换为bbb。

编辑于 2019-04-22 15:04:13 回复(0)

正确的命令是D. sed -n '/ERP/p' demo.log。

这个命令使用了sed工具,其中-n选项表示只打印经过处理的行,/ERP/表示匹配包含"ERP"的行,p表示打印匹配到的行。因此,这个命令会将文件demo.log中包含"ERP"的行打印到标准输出。

其他选项的解释如下:
 A. sed '/ERR/a' demo.log:这个命令是在匹配到包含"ERR"的行之后插入一个空行。
 B. sed '/ERP/p' demo.log:这个命令会打印文件中所有包含"ERP"的行,但不符合题目要求。
 C. sed '/ERP/d' demo.log:这个命令会删除文件中所有包含"ERP"的行,也不符合题目要求。
发表于 2023-11-07 14:08:25 回复(0)
sed命令用于行的新增/删除, 行的替换/显示, 搜寻并替换, 直接修改文件。 -n:使用安静(silent)模式。在一般 sed 的用法中,所有来自 STDIN 的数据一般都会被列出到屏幕上。但如果加上 -n 参数后,则只有经过 sed 特殊处理的那一行才会被列出来。 p:打印,将某个选择的数据印出来。通常 p 会与参数 sed -n 一起用 d:删除 a:新增
发表于 2021-05-18 21:52:28 回复(0)
D
发表于 2019-01-02 14:05:18 回复(0)