我找到了一个关于如何使用 Linuxdate
命令转换时区的解决方案:
Timezone conversion by command line
$ date --date='TZ="Asia/Taipei" 18:00'
Fri Jul 16 11:00:00 BST 2010
Run Code Online (Sandbox Code Playgroud)
它运行良好,但我无法弄清楚如何在 Bash 脚本中使用它,当时间是一个变量时,例如:
TIME=18:00
DATE="`date --date='TZ="Asia/Taipei" $TIME' +%F\ %H:%M`"
echo $DATE;
Run Code Online (Sandbox Code Playgroud)
我在转义特殊字符时遇到问题。而且我完全不明白为什么该date
命令适用于BST、EET等时区,而不适用于“亚洲/台北”、欧洲/莫斯科等时区。