如何使 Tmux 显示不同时区的时间



点击<tmuxPrefix> + t会显示我服务器上的时间,但我希望它显示我当前时区的时间,而不是服务器的时区。

当我想在当前时区的状态栏中显示时间时,我遇到了同样的问题。

我能够使用以下命令部分修复它:

set -g status-right '#(TZ="Asia/Kolkata" date )'

但是当我在状态中使用 %H%M%S 等修饰符时,如下所示,它最终会显示服务器时区的时间。

set -g status-left '%H:%M:%S'

我已经用TZ="Asia/Kolkata"更新了我的.bashrc配置。当我在 bash 中运行 time 命令时,这让我有时间在正确的时区,但它似乎没有在 Tmux 会话中使用该变量。

任何人都可以让我知道我该如何解决它吗?

对于问题的第二部分,您可以使用:

set -g status-right '#(TZ="Asia/Kolkata" date +%%H:%%M:%%S)'

我所做的是为我的用户设置时区。它超越了tmux,它将翻译任何显示日期和时间的内容,例如"ls"的输出。

编辑 ~/.profile 并设置 TZ 变量,例如:

export TZ=/usr/share/zoneinfo/US/Pacific

您还可以让 ssh 自动发送您当前的时区。确保你的笔记本电脑的 ~/.profile 中有 TZ,然后指示 ssh 通过将其添加到 ~/.ssh/config 来发送它

SendEnv TZ

远程服务器必须配置为接受它,如果它不起作用,请确保它在/etc/ssh/sshd_config 中有这个

AcceptEnv LANG LC_* TZ

如果日期时间格式中有空格,则可以使用:

set -g status-right '#(TZ="Asia/Kolkata" date +"%%h %%d %%H:%%M")'

相关内容

  • 没有找到相关文章

最新更新