使用选项-i和标志/ d设置sed

4 shell gnu sed

Shell脚本中的sed命令有什么作用?

sed -i /'abc'/d  "/etc/rc.d/rc.local"
Run Code Online (Sandbox Code Playgroud)

更准确地说,“-i”在这里做什么?以及为什么在模式结尾处设置了“ d”标志?

ali*_*dro 5

在sed手册中,该i选项表示就地编辑

-i[SUFFIX], --in-place[=SUFFIX]

   edit files in place (makes backup if extension supplied)
Run Code Online (Sandbox Code Playgroud)

d 表示删除动作

d      Delete pattern space.  Start next cycle.
Run Code Online (Sandbox Code Playgroud)

在您的示例中,这两个组合将删除abc文件中包含的任何行/etc/rc.d/rc.local而无需备份。