只是一个简单的问题。
为什么这个 bash 命令在 Ubuntu 服务器上可以正常工作并找出 ISBN 代码,但在我的 Ubuntu 桌面上却不起作用?两个系统都是 22.04 LTS。
echo "ISBN 5-02-013850-9" | awk '/ISBN [0-9]{1}-[0-9]{2}-[0-9]{6}-[Xx0-9]{1}/ {print $0}'
Run Code Online (Sandbox Code Playgroud)
提前致谢。
可能其中一个正在使用gawk(GNU awk) 而另一个是mawk,它似乎不支持 RE 大括号量词。检查与awk -W version.
mawk似乎是awkUbuntu 22.04 中的默认设置,但如果您随后安装,gawk它将通过该update-alternatives机制进行优先选择。
请参阅内置正则表达式不支持大括号表达式。
顺便说一句,[Xx|0-9]可能应该是[Xx0-9](除非您试图匹配文字|)。
| 归档时间: |
|
| 查看次数: |
877 次 |
| 最近记录: |