它被改變了between 3.1 and 3.2。猜猜高級指南需要更新。
這是添加與bash-3.2由於 釋放的bash-3.1的新 特徵的簡短描述。與往常一樣, 手冊頁(doc/bash.1)是要查找完整說明的地方 。
- 在猛砸
剪斷
˚F新功能。引用字符串參數爲 [[command's =〜運算符現在強制 字符串匹配,與其他模式匹配運算符一樣。
不幸的是,除非您有洞察力將模式存儲在變量中並直接使用它們而不是正則表達式,否則這會使用腳本打破現有報價。下面的例子。
$ bash --version
GNU bash, version 3.2.39(1)-release (i486-pc-linux-gnu)
Copyright (C) 2007 Free Software Foundation, Inc.
$ number=2
$ if [[ $number =~ "[0-9]" ]]; then echo match; fi
$ if [[ $number =~ [0-9] ]]; then echo match; fi
match
$ re="[0-9]"
$ if [[ $number =~ $re ]]; then echo MATCH; fi
MATCH
$ bash --version
GNU bash, version 3.00.0(1)-release (i586-suse-linux)
Copyright (C) 2004 Free Software Foundation, Inc.
$ number=2
$ if [[ $number =~ "[0-9]" ]]; then echo match; fi
match
$ if [[ "$number" =~ [0-9] ]]; then echo match; fi
match
的ABS是相當臭名昭著爲不準確的來源(或上更好的日子,僅僅是誤導)指導;認爲它是shell腳本的W3Schools。考慮bash-hackers.org或wooledge維基作爲備選方案,注意準確性。 – 2016-07-14 21:36:02