web-dev-qa-db-ja.com

コマンドから現在のディスクI / O使用状況を取得する

単一のコマンドから現在のディスクI/O使用率(%)を取得しようとしています。

現在私は持っています

iostat -dx /dev/sda 1 | awk  {'print $16'}

iostatからのI/Oの使用率エントリが表示されます。それはまた、新しいエントリを更新して与え続けます。それは私が望まないことです:

%util
0.06

%util
0.00

%util
0.09

私が取得しようとしているのは、現在のI/O使用率をパーセントで示す1行だけです。したがって、出力は次のようになります。

0.06
2

これは私にはうまくいくようです(以下の例では、最初のものは他に何も起こらずに取られ、2番目は大きな巨大なファイルを読んで取られました):

doug@s15:~/iso$ iostat -dxy 2 1 /dev/sda | grep sda | awk  {'print $14'}
0.00
doug@s15:~/iso$ iostat -dxy 2 1 /dev/sda | grep sda | awk  {'print $14'}
100.00

このコマンドは、2秒間隔で1つのサンプルを取得し、開始統計を無視します。

注:私のコンピューターでは、16列ではなく14列を使用する必要がありました。

2
Doug Smythies