Я нашел частичные решения на нескольких сайтах, поэтому я собрал несколько частей вместе, но я все еще не мог понять это.
Вот что я делаю:
Я бегупростая java-программа из терминала, и нужно найти среднее время выполнения программы.
Я выполняю команду несколько раз, нахожу общее время, а затем делю это общее время на числораз я запускал программу.
Я также хотел бы получить выходные данные программы, а не отображать их на стандартном выходе.
Вот мой текущий код и выходные данные.
Сценарий оболочки:
startTime=$(date +%s%N)
for ((i = 0; i < $runTimes; i++))
do
java Program test.txt > /dev/null
done
endTime=$(date +%s%N)
timeDiff=$(( $endTime - $startTime ))
timeAvg=$(( $timeDiff / $numTimes ))
echo "Avg Time Taken: "
echo $timeAvg
Вывод:
./run: line 12: 1305249784N: value too great for base (error token is "1305249784N")
Строка № 12 отключена, поскольку этот код является частью файла большего размера.Строка № 12 - это строка с timeDiff
, которая оценивается.
Я ценю любую помощь и приношу извинения, если этот вопрос излишний или не по теме.