不同的python在不同的SSH登录之间表现?

时间:2015-09-08 15:36:37

标签: linux character-encoding ntfs python-unicode

我在CentOS中安装了一些NTFS磁盘,其中一些文件名是中文。我通过Mac iTerm登录Centos,但在我的办公室Mac中,ls显示正确的中文文件名,但在家用Mac中,ls只显示{{1}最重要的是,当我在家用Mac中启动时,我的python脚本无法处理这些文件(??????????????????),但在办公室Mac启动时,它运行良好。

为什么会这样?如何解决?

除了两个不同的Mac之间的ENV设置,python脚本是相同的,磁盘也一样,为什么在家用Mac上启动时会出现异常?还有一些ENV?

1 个答案:

答案 0 :(得分:0)

好的,我得到了答案。即使在该计算机上设置了环境,ssh登录也不接受目标计算机上的LC_ALL。因此,在运行Python脚本时,LC_ALL值不会发送到python脚本,也无法处理这些中文命名文件。

从C的角度来看,main()函数通常有2个参数:

int main(int argc, char *argv[])

但实际上还有另外一个:

int main(int argc, char *argv[], char *env[])
突然,我找到了答案。

为避免再次出现同样的问题,您可以在启动脚本中添加export或设置sshd_config