python – 如何通过Fabric设置远程服务器TimeZone?

我正试图通过Fabric更改我的远程服务器的时区,如下所示:

run("export TZ=\":Pacific/Auckland\"")
run("date")

这似乎不起作用. run(“date”)给了我:
4月19日星期二00:19:58 CDT 2011,这不是我刚刚设定的时区.

如果我只是登录服务器并运行相同的bash命令,一切都如预期的那样:

[lazo@lazoweb]$date
Tue Apr 19 00:20:00 CDT 2011
[lazo@lazoweb]$export TZ=":Pacific/Auckland"
[lazo@lazoweb]$date
Tue Apr 19 17:20:20 NZST 2011

任何人都可以对此有所了解吗?我错过了什么?

解决方法:

run("export TZ=\":Pacific/Auckland\"")
run("date")

就好像

/bin/sh -c 'export TZ=":Pacific/Auckland"'
/bin/sh -c 'date'

你正在启动一个shell,设置一个环境变量,然后退出它.它从未有机会将环境变量传递给任何人.

在脚本环境中设置TZ然后运行日期.我不懂Python,但似乎是

os.environ['TZ'] = ":Pacific/Auckland"
run("date")

相关文章

用的openwrt路由器,家里宽带申请了动态公网ip,为了方便把2...
#!/bin/bashcommand1&command2&wait从Shell脚本并行...
1.先查出MAMP下面集成的PHP版本cd/Applications/MAMP/bin/ph...
1、先输入locale-a,查看一下现在已安装的语言2、若不存在如...
BashPerlTclsyntaxdiff1.进制数表示Languagebinaryoctalhexa...
正常安装了k8s后,使用kubect工具后接的命令不能直接tab补全...