コマンドライン引数として2つの.cppファイルを取り込み、それらをコンパイルして実行時間を測定するバッチスクリプトを作成しようとしています。(standard_in)1:bashスクリプトの構文エラー
#!/bin/bash
error=0
g++ -O2 -std=c++11 $1 -o __gen
((error|=$?))
g++ -O2 -std=c++11 $2 -o __run
((error|=$?))
if (($error != 0)); then
echo 'Compilation failed'
rm __gen __run
exit 1;
fi
clear
echo 'Compilation was succesful'
time=0.0
until ((`bc <<< "$time > 1.5"`)); do
./__gen > in
time=$(/usr/bin/time -f "%e" ./__run <in> out)
done
最初の.cppは、テストジェネレータのソースコードです。 2番目のプログラムの入力を生成します。 2回目のプログラムが1.5秒以上実行されたときにバッチを停止したい。
スクリプトを実行すると、私は(standard_in) 1: syntax error
となります。 私を助けることができますか?
ありがとうございました!しかし、どうすればそれを修正できますか? ./__runは、端末に表示したくない出力を生成し、時間変数にも出力しません – manolismi