grep について手伝ってもらえますか? 次のものがあります:
variable="RMN quota: 0 bytes"
そして
variable="RMN quota: 1.56 bytes"
出力を取得するターゲット ID: 0 または 1.56。
grep すると何になるでしょうか?
答え1
POSIX 的には:
n=${variable% bytes} # strip the trailing " bytes"
n=${n##*[[:blank:]]} # strip the leading part up to the rightmost blank
答え2
これは動作するようです:
grep -Eo '[0-9]+(\.[0-9]+)?' inputfile
ファイルの内容ではなくシェル変数の値をチェックする場合は、次のようにします。
echo "$variable" | grep -Eo '[0-9]+(\.[0-9]+)?'
答え3
bash があるので:
tr -d -c 0-9. <<<$variable
(Zsh でも動作します)。