Арифметическая операция над переменной времени в c-shell

Мне нужна помощь в использовании времени в c-shell. Я хочу знать, сколько времени потребовалось для выполнения скрипта, поэтому я хочу сделать это следующим образом.

1.set start_time=time
2 часть скрипта
3.set end_time=time
4. set diff=end_time-start_time
5.echo "Потребовалось $diff секунд"

но я не мог получить значение времени с помощью какой-либо команды.
может ли кто-нибудь предложить команду для чтения значения времени в c-shell


person Vinod kumar    schedule 25.02.2014    source источник
comment
Почему бы вам просто не использовать time ./script.sh ?   -  person fedorqui 'SO stop harming'    schedule 25.02.2014
comment
сценарий не является сценарием оболочки. это c-shell, и я хочу сделать это в make-файлах. я не могу запустить bash commends в c-shell, как только я делаю csh commnad   -  person Vinod kumar    schedule 25.02.2014
comment
Ну, но в целом вы можете использовать time перед любой командой, чтобы увидеть, сколько времени потребуется для ее выполнения.   -  person fedorqui 'SO stop harming'    schedule 25.02.2014
comment
Нет.. На самом деле происходит следующее.. мне не требуется все время, затрачиваемое на скрипт, но мне нужно несколько черно-белых команд, которые занимают много времени.   -  person Vinod kumar    schedule 25.02.2014
comment
Кстати, команда time дает real, usr, sys вот так ... есть ли способ отформатировать ее, чтобы получить секунды или часы в обычное время?   -  person Vinod kumar    schedule 25.02.2014


Ответы (1)


Я думаю, вам нужна команда «дата» с форматом, чтобы дать вам необработанные секунды:

@ start_time = `date +%s`
script part
@ end_time = `date +%s`
@ diff = $end_time - $start_time
echo "It took $diff seconds"
person Mark Armstrong    schedule 16.03.2014