准备下载ftp上的文件,记得curl可以实现下载ftp的文件,然后尝试了,
curl ftp://username:password@192.168.1.2/平台全量包/package0811.zip -o package0811.zip
结果是卡住不动了!卡住不动了!卡住不动了!没有出现预想的下载进度条。
怀疑自己的命令写错了,然后使用ftp客户端
#ftp
>open 192.168.1.2
>username
>password
>ls
输入完上面的命令之后发现中文乱码啊
百度搜索了个中ftp客户端乱码的问题,大部分都是windows的问题(感觉google靠谱,虽然麻烦)。
然后自己开始探索,第一步在ssh终端上修改当前会话的编码,修改为gbk,然后使用ftp登录,发现使用ls命令之后能显示中文路径,但是【cd 平台全量包】之后,就会卡住不动了。不得不管理终端页面。心想既然是编码的问题,那就从编码下手吧,远程的FTP server的编码是gbk的,而且我这边也修改不了。linux 的FTP命令行客户端也不能修改编码。然后突然想使用window的命令行试试,结果正常,能够cd目录。看样子跟命令行环境也有关系,修改shell环境变量
#export LANG="zh_CN.GBK"
再次尝试,OK,可以正常的浏览中文目录。
后来也尝试过其他的方法,最简单的就是修改终端的编码,例如我设置的终端编码为utf-8,然后修改为gbk。直接使用下面的命令就可以了
curl ftp://username:password@192.168.1.2/平台全量包/package0811.zip -o package0811.zip
修改为
GB18030包含GBK包含GB2312
export命令是针对当前shell环境的,下次登录之后就恢复为原来的环境变量了。
来源:oschina
链接:https://my.oschina.net/u/1159248/blog/733960