Aix grep 通配符不起作用

Posted

技术标签:

【中文标题】Aix grep 通配符不起作用【英文标题】:Aix grep wildcard not working 【发布时间】:2014-08-01 14:27:56 【问题描述】:

我有一个名为 message 的文件,其中包含 CSC/UT/USA/WBIMB/SAP/orders05:orders05/ORDERS05/NONE/ORDRSP/758 行p>

我正在做一个 grep(平台是 AIX 6.1) grep CSC/UT/USA/WBIMB/SAP/orders05:orders05/ORDERS05/NONE/ORDRSP/758 message 找到该行并显示输出

但是,当我尝试使用如下通配符时 grep CSC/UT/USA/WBIMB/SAP/orders05:orders05/ORDERS05/.*/ORDRSP/758 message 它没有找到线路。我在这里遗漏了什么吗?我很困惑。

【问题讨论】:

应该没关系,但也许您需要将 grep 搜索目标放在单引号中?即grep 'CSC/UT/USA/WBIMB/SAP/orders05:orders05/ORDERS05/.*/ORDRSP/758' message。另外,这不是编程问题,以后请寻找正确的论坛来发布您的问题。祝你好运。 好吧,谢谢@shellter,我会把问题移到不同的论坛。简单地说,单引号也不适合我! 你能做到:lslpp -h bos.rte.commands 吗?另外,为了安全起见,你可以做 /usr/bin/grep ..... 只是为了确保你得到你认为你应该得到的 grep。我自己也时不时地经历过 grep 的随机失败。可能有一个修复是我要求 lslpp 级别的原因。 【参考方案1】:

这样的路径名中的通配符不使用正则表达式。他们改用通配符。在该方案中,点不是特殊字符,因此该命令正在查找名称以该点开头的任何目录(这将被隐藏,但这是另一回事)。要在任何目录中搜索,只需使用星号:

grep CSC/UT/USA/WBIMB/SAP/orders05:orders05/ORDERS05/*/ORDRSP/758 message

【讨论】:

以上是关于Aix grep 通配符不起作用的主要内容,如果未能解决你的问题,请参考以下文章

阵列在 AIX KSH 中不起作用

grep 用于文件中的部分字符串

为啥 jar 执行的通配符在 docker CMD 中不起作用?

Flyway 通配符在 Spring Boot 中不起作用

带有连续管道的 grep 不起作用

Vue路由器 - 捕获所有通配符不起作用