我创建了一个UTF-8编码的文件。该文件包含中文字符。
当我将文件从我的 macbook 通过 sftp 传输到 ubuntu 14.04 服务器时,中文字符变成了菱形。
当我查看该文件时(通过 SSH 或直接在机器上使用 CRT 显示器),该文件总是显示为菱形。
ubuntu 的语言环境是en_US.UTF-8
我如何
a) 是否能以某种方式重新输入 ubuntu headless 14.04 中的字符?
或者
b) 传输文件过去后汉字还能正确显示吗?
更新
我的意思是,14.04 ubuntu 服务器版本没有 GUI。无论何时使用 vim 或 nano 或任何编辑器打开文件,文件都会一直以菱形显示中文字符。
答案1
“无头”服务器无法显示任何东西——拉丁字母、中文字符都无法显示;它是无头的。显示字符的是您的终端/网络浏览器/您在本地使用的任何应用程序。您看错了管道的一端;例如,下图显示了服务器上的程序如何发送字符 <U+7F51> (网,wǎng,“net”,“network”)到本地机器上的应用程序:
User Local machine Headless server
______________ ____________
( ) | __________ | | |
/|\ | | Terminal | | \xE7 \xBD \x91 | |
/ | \ | | | |<-----------------| <U+7F51> |
| | | 网 | | (UTF-8 encoding) | |
/ \ | |__________| | | |
/ \ |______________| |____________|