问题描述
从网上的一些阅读来看,sed的-e
标志用法好像是记一个sed脚本
例如:
sed -i -e 's/default_language/language/g' "$CONF_FILE"
但是从自我测试和一些网上搜索来看,这条线似乎也应该有效:
sed -i 's/default_language/language/g' "$CONF_FILE"
那我需要 -e
做什么?它仅对我想连续编写多个脚本的情况有用吗?因为这也可以通过 ;
进行管理。
解决方法
根据manual:
如果没有给出 -e
、--expression
、-f
或 --file
选项,则 第一个非选项参数被视为 sed
脚本来解释。所有剩余的参数都是输入文件的名称;如果没有指定输入文件,则
读取标准输入。
正如您已经提到的,-e
可用于多个命令。
sed 'cmd1; cmd2'
sed -e 'cmd1; cmd2'
sed -e 'cmd1' -e 'cmd2'