平时工作中经常要用 到SecureCRT和SecureFX来远程连接Linux服务器,大部分都是使用SecureCRT连接,有时候也使用SecureFX上传或者下载文件,一般都是英文文件,所以一直没出什么问题。今天由于项目有一个大版本更新,需要将文件应用系统备份下来,开始想着这个容易,使用SecureFX把文件应用文件夹压缩下载下来就可以了,下载后发现里面有许多中文文件,而且全部是乱码的。然后使用SecureFX打开对应路径,发现显示的也是乱码,然后谷歌了一下,找到了解决办法:
1. 找到SecureFX配置文件夹(选项–全局选项,常规下的配置文件夹),比如:F:\Program Files\SecureCRSecureFXPortable\Data\Settings\Config
2. 在配置文件夹下的Sessions子目录中,找到SecureCRT连接对应的Session文件(.ini扩展名),双击打开;
3. 查找Filenames Always Use UTF8,将=号后面的参数改成00000001,保存退出即可。
重启后发现中文显示正常了,然后我心想这下总算可以了,然后重新压缩下载,没有想到下载后解压后发现中文还是乱码。把服务器上的压缩文件解压后发现中文是正常的,谷歌了一下,结果不理想,服务器上编码设置的是utf-8,然后我换了tar尝试,还是不行,后来同事说zip命令是不行,让我用7zip。下载了7zip的bin安装文件,解压执行install.sh,没有错误,然后执行7z命令压缩文件夹,结果报command not found,我猜想可能没有加入到环境变量,就去命令所属目录下执行该命令,还是报错,我以为是下载的文件有错,然后下载了一个rpm包重新安装,还是同样的错误,网上搜索了一下,也没有找到解决方法,然后无意中发现7z命令不行,但是7za命令是可以的,按照网上所说的,7za属于轻量级,不使用插件,7z则使用插件,支持的格式最多,因为我猜不能使用7z命令可能是缺少什么插件吧,不过7za能压缩就行了,后来把压缩的文件下载下来解压,果然中文文件正常显示,没有乱码,本来以为很容易的小问题,花了好几个小时,能说什么呢,只能感叹javaweb中的中文乱码问题真是不少啊!