テキストを含む変数があります。stdoutにエコーできるので、変数は問題ないと思います。私の問題は、そのテキスト変数のパターンをgrepしようとしていることです。これが私が試していることです:
ERR_COUNT=`echo $VAR_WITH_TEXT | grep "ERROR total: (\d+)"`
$ ERR_COUNTをエコーすると、変数が空のように見えるので、何か間違ったことをしているに違いありません。
これを正しく行う方法は?ありがとう。
編集-私が変数に持っているサンプルテキストでそのパターンをテストすることは私に何かを与えることを言及したかっただけです(私はhttp://rubular.comでテストしました)
ただし、正規表現はまだ間違っている可能性があります。
EDIT2-まだ結果が得られていないので、これが私が扱っている文字列です:
ALERT line125: Alert: Cannot locate any description for 'asdf' in the qwer.xml hierarchy. (due to (?i-xsm:\balert?\b) ALERT in ../hgfd.controls) ALERT line126: Alert: Cannot locate any description for 'zxcv' in the qwer.xml hierarchy. (due to (?i-xsm:\balert?\b) ALERT in ../dfhg.controls) ALERT line127: Alert: Cannot locate any description for 'rtyu' in the qwer.xml hierarchy. (due to (?i-xsm:\balert?\b) ALERT in ../kjgh.controls) [1] 22280 IGNORE total: 0 WARN total: 0 ALERT total: 3 ERROR total: 23 [1] + Done /tool/pandora/bin/gvim -u NONE -U NONE -nRN -c runtime! plugin/**/*.vim -bg ...
これは文字列なので、あいまいさがなくなることを願っています...数値「23」(「ERRORtotal:」の後)を変数に抽出したいのですが、苦労しています。
乾杯