3

私はシェルスクリプトを持っています

 #!/bin/bash
START=$(date +%s)
echo "  Start| $START "
# do something
# start your script work here
#  
# your logic ends here
END=$(date +%s)
echo "  End|  $END "
DIFF=$(( $END-$START ))
echo "  Diff in seconds|"  $DIFF

まだこのエラーが発生しています 1349769151 終了| 1349769151 ")49769151rror: 算術演算子が無効です (エラー トークンは "

基本的なことはわかっているので、すでに2日間検索してデバッグしています。しかし、まだこれで何も機能しません。助けてください!

4

2 に答える 2

3

START と END は、減算できない日付形式ではありません。実行時間を測定するだけの場合は、%s のみを使用すると、差が秒単位で得られます。

START=$(date +%s)
echo "  Start| $START "
# do something
# start your script work here
#  
# your logic ends here
END=$(date +%s)
echo "  End|  $END "
DIFF=$(( $END-$START ))
echo "Diff in seconds:" $DIFF
于 2012-10-09T07:44:13.803 に答える
2

文字列で算術演算を実行しようとしています: 動作しません。

日付をタイムスタンプとして印刷し、date "+%s"それらの数値を計算に使用することをお勧めします。

于 2012-10-09T07:44:47.797 に答える