grep コマンドが必須文字と一致します。

grep コマンドが必須文字と一致します。

現在、ストレージのフルスナップショット使用量を取得するには、次のコマンドを使用しています。これGにはない値のみが表示されますT

# isi_classic snapshot usage | tail -n 1 | egrep -o "[+-]?[0-9]+[.]?[0-9]([eE][+-])?[0-9]G"
621G

1つのコマンドでGとTの両方を一致させ、正確な出力を得る方法はありますか?

# isi_classic snapshot usage
[snapid 1653, delete pending]                        0     n/a (R)    0.00% (T)
ifs_daily-s1-nov01_20            262G     n/a (R)    0.46% (T)
ifs_weeky-s1-nov01_20            176G     n/a (R)    0.31% (T)

                                               18T     n/a (R)   31.37% (T)

実際の出力は以下の通りです。

 isi_classic snapshot usage | tail -n 1
                                                  621G     n/a (R)    1.08% (T)

答え1

ここではgrepは必要ないと思い、代わりにawkを使用します。

isi_classic snapshot usage | tail -1 | awk '{print $1}'

しかし、こだわりなら、grep最後のものをG次のように変更すると[GT]役に立ちます。

isi_classic snapshot usage | tail -1 | egrep -o "[+-]?[0-9]+[.]?[0-9]([eE][+-])?[0-9][GT]"

関連情報