在Linux内核2.6.3中设置时区
我正在制作一个shell脚本,从用户那里获取输入,以便在Linux中设置时区。 参数($1)是以下字符串在Linux内核2.6.3中设置时区,linux,shell,timezone,Linux,Shell,Timezone,我正在制作一个shell脚本,从用户那里获取输入,以便在Linux中设置时区。 参数($1)是以下字符串(A)之一:“GMT-12”、“GMT-11”、“GMT-10”、…“GMT”、“GMT+1”、,。。“GMT+12”。 目前,我发现下面的命令用于设置时区: **# ln -sf /usr/share/zoneinfo/*Japan* /etc/localtime** 在此命令中,“Japan”是我的“/usr/share/zoneinfo”目录中的文件之一。 我将使用上面
(A)之一:“GMT-12”、“GMT-11”、“GMT-10”、…“GMT”、“GMT+1”、,。。“GMT+12”。
目前,我发现下面的命令用于设置时区:
**# ln -sf /usr/share/zoneinfo/*Japan* /etc/localtime**
在此命令中,“Japan”
是我的“/usr/share/zoneinfo”
目录中的文件之一。
我将使用上面的命令,我的问题是:
有没有办法我可以获得适合我的A字符串的必要文件列表。或者,我必须手动检查zoneinfo目录中的所有文件,并找到适当的文件,如:
"GMT-9" <-> Japan
"GMT-5" <-> EST
( etc. )
“GMT-9”日本
美国东部时间“GMT-5”
(等等)
您是否要求允许用户输入GMT-9或日本并获得相同的结果?祝你好运。还有,你的头说出口指挥部,怎么会这样?最好使用任何附加说明编辑您的帖子。祝你好运。这不是设置全局默认时区的正确方法。设置全局默认时区的正确方法是在/etc/profile
中设置TZ
环境变量。它可以是相对于/usr/share/zoneinfo
的路径名,也可以是您已有格式的GMT偏移量。所以你不必解决这个问题。谢谢你的回复。我想做如下输入:./settimezone.sh“GMT-9”输出:系统时区设置为日本时区(JST)(标题已编辑),如果尚未设置,则必须添加它<代码>TZ=“无论什么”;export TZ是语法。是的,TZ仅适用于读取它的内容,在本例中,它是所有交互式会话(我认为X显示管理器读取/etc/profile
;如果您发现它们不读取,请尝试/etc/environment
)。不过,事情是,其他一切都应该在UTC中运行。时区是用户体验的东西;不应将其应用于系统过程。