2016-12-30 26 views
0

我正在接收两个输入的脚本工作:接收从输入时间戳在一个外壳脚本

  1. 的timeZone(美国/洛杉矶)
  2. 在UTC的时间标记具有以下格式"%Y-%m-%dT%H:%M:%SZ”

的脚本应该找到偏移,并将其添加到输入时间戳,所以当我运行:

./TZ-converst.sh Asia/Kolkata 2016-12-07t00-00-00z 

的输出将是2016-12-07t00-05-30z

的每个时区偏移来得容易:

offset="$(TZ=":$tz" date +%z)" 

不过,我有一个很难将这一偏移量与输入时间"2016-12-07t00-00-00z"

我试图用date -d使用的输入参数,但我不断收到

“用法:日[-jnu] [-d DST] [-r秒] [-t西] [ - v [+ | - ] val [ymwdHMS]] ... [ - f fmt date | [[[mm] dd] HH] MM [[cc] yy] [。ss]] [+ format]“

有什么想法?

+0

'日期-d“2016-12-07T00:00:00Z 1 hour''产量'星期三12月07日01:00:00 UTC 2016' – bishop

+0

不,它不。这是我运行该命令后得到的“用法:date [-jnu] [-d dst] [-r seconds] [-t west] [-v [+ | - ] val [ymwdHMS]] ... [ ffmt date | [[[mm] dd] HH] MM [[cc] yy] [。ss]] [+ format]“ – Erin

+0

说实话,只是@bishop date -d命令的精确复制粘贴,机器产量'Wed Dec 7 03:00:00 EET 2016'。你的日期 - 版本是什么?我的debi有GNU日期版本8.26 –

回答

1

打印时区偏移,按照夏季时间的导数,在特定的时间:

TZ=Asia/Kolkata date -d '2016-12-07t00:00:00z' +%z 
+0530 

护理,以保持语法:

--Day小时分钟Ž