捷径指令里通过SSH运行脚本,脚本里的中文会变成乱码
通过SSH运行脚本,脚本里的中文会变成乱码,请问有什么办法解决吗?谢谢
iPhone 11
通过SSH运行脚本,脚本里的中文会变成乱码,请问有什么办法解决吗?谢谢
iPhone 11
会不会是编码的问题?
快捷指令的 SSH 应该是 UTF8 编码。
通过快捷指令的 SSH 直接发送“中文”会被编码为“\344\270\255\346\226\207”。
对“\344\270\255\346\226\207”进行 8 转 16 进制就是“E4 B8 AD E6 96 87”。
而“E4B8AD E69687”就是“中文”的 UTF8 编码。
我这边看起来是没问题的。
传输过程中文会被编码,但应该是可以正常工作的。
是的 ,echo是正常的。我又试了一下,应该是运行在我服务器上的java程序的问题,好像不支持通过这种方式输入的中文。快捷指令也无法显示我java程序print的中文。请问还有进一步的建议吗?谢谢!
感谢回复! 我也考虑是编码的问题,可是我的java程序已经选择了UTF8编码,但是还是不行。我在程序开始时,将传递进来的参数用16进制打印输出,通过快捷指令的SSH运行的时候,"中文"打印的是0x3F3F3F3F3F3F;而通过其它工具(比如:putty)来运行程序,参数"中文"的打印就是正常的UTF8编码0xE4B8ADE69687。
感觉问题出在sh:$上面,不知这个$是不是多余的。我改直接发abc,回的是sh: abc: commnad not found.
捷径指令里通过SSH运行脚本,脚本里的中文会变成乱码