首先:抱歉使用c shell,怪我的公司不是我。我讨厌这个该死的东西,就像你现在大多数人一样(起初我就像,嘿,这不是那么糟糕)。
我试图减去从时间戳中获得的大数字。这是我正在尝试的:
set curTime = `date +%s%N`
#... some stuff
@curTime = `date +%s%N` - $curTime #get the diff
echo "time taken: $curTime"
但是我觉得这些数字太大了 - 在我尝试了几秒钟之前它运行良好。这是我在日志中看到的内容:
@curMilli = 1349996279792995000 - 1349996279170458000
@curMilli: Command not found.
正如我所说,我对date +%s
做了同样的事情并且它没问题,所以我假设这是关于数字的大小。
我该怎么做?非常感谢。
答案 0 :(得分:1)
文章http://en.wikipedia.org/wiki/Bc_programming_language有一个简短的部分“在shell脚本中使用bc”。测试:
set curTime = `/bin/date +%s%N`
/bin/sleep 2
set prevTime = $curTime
set curTime = `/bin/date +%s%N`
set diff = `echo "$curTime - $prevTime;" | /usr/bin/bc`
echo $diff
将给出(带有初始20
变量之后的数字):
2016204108
P.s:我希望我可以为"I hate the damn thing as much as most of you do now (at first I was like, hey this ain't so bad)."