Linux本地与UTC时间,以秒为单位

Fel*_*lix 3 linux time datetime date

你能解释一下这两种语法有什么问题,以便以秒为单位获取经过的时间吗?

如果我同时运行这两个命令:

date -u +%s   # - for UTC - returns e.g. 1303430843. 

date +%s     # - for local time - mine is set to pacific time
          # - also returns e.g. 1303430843
Run Code Online (Sandbox Code Playgroud)

我得到完全相同的数字(例如1303430843)秒,没有差别,但我期望25200秒 - 7小时的差异,就好像我跑:

date -u "+%Y-%m-%d %H:%M:%S"    # returns:  2011-04-22 00:01:14

date    "+%Y-%m-%d %H:%M:%S"    # returns:  2011-04-21 17:01:14 - 7 hours difference
Run Code Online (Sandbox Code Playgroud)

这里有什么收获?

谢谢

Chr*_*odd 5

从手册页:

自1970-01-01 00:00:00 UTC以来的%s秒

所以%s返回自UTC指定的特定时间点以来的秒数,这意味着它根本不受时区的影响.