显然,有人在将文件从一台服务器移动到另一台服务器时没有注意编码,结果我的文件名包含德语变音符号,在ls
使用 PuTTY 时会显示为问号。但是,在使用 bash 自动完成时,文件名不会显示问号,而是显示一个奇怪的字符。另一方面,FileZilla 通过 SFTP(SSH,而不是使用 SSL/TLS 的 FTP)在文件列表中正确显示字符,但无法传输文件:
/var/www/domain.tld/Maße.doc: open for read: no such file or directory
我ls
得到:
-rw-r----- 1 smares smares 19K May 9 2013 Ma?e.doc
当点击 Tab 键自动完成时:
smares@smares:/var/www/domain.tld$ cat Ma▒e.doc
有什么方法可以挽救文件名吗?
答案1
我必须将 PuTTY 中的远程字符集切换为 ISO-8859-1,为 de_DE.ISO-8859-1 生成语言环境并将其用作 LANG。