是否可以将本地时间列表转换为 UTC?本地时间列表位于文本文件中,我希望它创建另一个包含列表但采用 UTC 格式的文本文件。如果可能的话什么命令可以帮助
当地时间(太平洋标准时间)
year
month
day
hour
min
sec
2016 03 01 13 15 00
2016 05 12 16 01 22
2016 12 23 09 11 11
以上是文本文件内的示例格式。
答案1
通过 GNU awk
(通常在 Linux 上,有时在其他系统上)以及您可以使用的数据
[g]awk '{print strftime(fmt,mktime($0" 0"),1)}' file
如果您希望输出格式与输入相同,请使用"%Y %m %d %H %M %S"
fmt。如果您的输入实际上是本地的民事时间,包括一年中适当时间的夏令时,省略后缀" 0"
。如果“PST”是美国太平洋地区,那么它通常遵循美国的夏令时规则,但如果是菲律宾时间,它通常不会移动,靠近赤道。
答案2
基本命令是date
.对于第一次约会,您可以输入
date -u --date=2016-03-01T13:15:00PST
当然你想读取文本文件,所以你可以这样做
awk '{print "date -u --date="$1"-"$2"-"$3"T"$4":"$5":"$6"PST"}' file.txt | sh
还有很多其他方法来处理文本文件。该man
页面包含date
有关如何格式化输出的信息。