タイミング付きddスクリプト

タイミング付きddスクリプト

次のようなスクリプトを書くための最良の方法を見つけようとしています。

  1. ddを使用して10 GBのファイルを作成し、完了したらファイルを削除し、25回繰り返すか、スクリプトが終了する前にCtrl + Cを入力するループスクリプトを作成します。
  2. 各操作(例えば、dd、rm)が終わったら、ddとrmがどれくらいかかったかを正確に知ることができるように時間を測定します。

これまで、私は次のことを考えています。

for i in {1..25}
  do
    time sh -c "dd if=/dev/zero of=/user/home/test.img bs=10G count=1" >> /tmp/dd_timed.txt && time sh -c "rm -f /user/home/test.img" >> rm_timed.txt
done

誰でもより良い解決策を持っているか、少し調整できますか?

ベストアンサー1

いいですね。これがこれを行う方法のようです。荒いようですが、うまくいきます。

#!/bin/bash
for i in {1..25}
do
{ time dd if=/dev/zero of=/home/user/test.img bs=1G count=10 oflag=direct >& / dev/null ; } 2>> /tmp/dd_timed.txt && { time rm /home/user/test.img >& /dev/null ;  } 2>> /tmp/rm_timed.txt
done

おすすめ記事