在sed中,使用由分号分隔的多个命令是相当常见的:
$ sed -e '/re/{s//replace/p; q;}
但是,标准(例如http://pubs.opengroup.org/onlinepubs/9699919799/)仅允许换行符作为分隔符:
$ sed -e '/re/{
s//replace/p
q
}
是否仍有许多常见的sed实现仍在使用,不允许使用分号?IOW,一个打算便携的sed脚本可以使用分号吗?
从POSIX规范sed :
比其他命令动词{,一个,b,c ^,我,- [R ,吨,瓦特,:,和#之后可以进行一个
<semicolon>,可选<blank>字符和另一个命令动词.但是,当s命令动词与w标志一起使用时,以这种方式使用另一个命令跟随它会产生未定义的结果.
因此,除了上面提到的那些命令之外,大多数命令都可以用分号分隔.
/[^\{abcirtw:#];[[:space:]]*/ :-)
| 归档时间: |
|
| 查看次数: |
2411 次 |
| 最近记录: |