さまざまな入力ファイルとフラグを使用してクイックソートの実行を大量に実行し、それらをフォーマットされた方法で外部ファイルに出力するスクリプトを作成しています。コンテキストを理解できるように、スクリプトの一部を次に示します。
echo $file
echo "Naive Pivot"
count=1
while [ $count -lt 4 ]
do
echo "Run $count"
count=$(($count+1))
time ./quicksort -pn -so < $file
echo
done
通常どおりリダイレクトしようとしました(stdoutから)
time ./quicksort -pn -so < $file > timing.txt
stderr からリダイレクトしようとしました (ただし、間違っている可能性があります)。
time ./quicksort -pn -so < $file 2 >> timing.txt
私も試してみました
/usr/bin/time -p -o timing.txt -a ./quicksort -pn -so < $file
そして、このような標準の stderr 出力セットアップでスクリプトを実行します
./testData.sh > timing.txt 2 > timing.txt
ただし、両方とも、ファイルの前後に配置したエコーコマンドの出力の間ではなく、ファイルの END にすべてのタイミングデータを追加します。そのため、コマンドラインではすべてが順番に出力されますが、出力をファイルに送信するスクリプトを実行しようとすると、すべてのエコーが発生します。
個人的な知識を使い果たしたので、助けが必要です。time コマンド (time または /usr/bin/time) を実行に関連する場所にあるファイルに適切に出力するにはどうすればよいですか? 前もって感謝します。