現在、ストレージのフルスナップショット使用量を取得するには、次のコマンドを使用しています。これ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]"