aix 上的 sed 正则表达式问题
Posted
技术标签:
【中文标题】aix 上的 sed 正则表达式问题【英文标题】:sed regex issues on aix 【发布时间】:2012-06-18 07:01:24 【问题描述】:可以帮忙翻译下面的 sed 命令,让它在 aix 上做同样的事情吗?
sed -e '/\([a-zA-Z0-9]\1,10\\s\1,5\\"\)/!d'
在 linux 上运行良好,但在 AIX 上似乎什么都不做
【问题讨论】:
此正则表达式匹配 以 1 到 10 个字母数字字符开头,后跟 1 到 5 个空格和双引号的行(我认为不需要转义双引号)、!d
表示打印匹配的行。 sed 命令对我来说看起来不错,但我没有 AIX 机器来测试它。
看来双引号有问题,不管转义与否AIX都不喜欢。
【参考方案1】:
原来问题与空格字符“\s”有关
我用转义的空格“\”替换了“\s”,它可以工作
sed -e '/\([a-zA-Z0-9]\1,10\\ \1,5\\"\)/!d'
【讨论】:
以上是关于aix 上的 sed 正则表达式问题的主要内容,如果未能解决你的问题,请参考以下文章