[英]Strange grep behaviour on fish shell
cat > abc.txt <<EOF
2014-04-11 00:00:00
2014-02-19 00:22:00
EOF
當我執行
grep -E :[0-9]{2}: abc.txt
我懂了
2014-02-19 00:22:00
我期待
2014-04-11 00:00:00
2014-02-19 00:22:00
這發生在魚殼(2.4.0)上,在bash上工作正常。 我對這里發生的事情很感興趣
在魚中{a,b,c}
是一個枚舉器。 文檔中的使用示例:
$ echo input.{c,h,txt}
input.c input.h input.txt
因此,您的正則表達式擴展為:[0-9]2:
::
$ echo :[0-9]{2}:
:[0-9]2:
$ echo :[0-9]{2,3,4}:
:[0-9]2: :[0-9]3: :[0-9]4:
逃避花括號以避免這種情況:
$ echo :[0-9]\{2\}:
:[0-9]{2}:
或者,按照Fredrik的建議,引用整個正則表達式:
$ echo ':[0-9]{2}:'
:[0-9]{2}:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.