Chinaunix首页 | 论坛 | 博客
  • 博客访问: 48180
  • 博文数量: 8
  • 博客积分: 1435
  • 博客等级: 上尉
  • 技术积分: 90
  • 用 户 组: 普通用户
  • 注册时间: 2007-04-01 10:50
文章分类
文章存档

2009年(4)

2008年(4)

我的朋友

分类: LINUX

2009-03-07 03:58:51

以下引用,解释得很好
    ASCII模式和Binary模式的区别是回车换行的处理,Binary模式不对数据进行任何处理,ASCII模式将回车换行转换为本机的回车字符,比如:UNIX下是\n,Windows下是\r\n,Mac下是\r。
    ASCII模式下会转换文件,不能说是不同系统对回车换行解释不同,而是不同的系统有不同的行结束符。UNIX系统下行结束符是一个字节,即十六进制的0A,而Windows的系统是两个字节,即十六进制的0D0A,所以当你用ASCII方式从UNIX的FTP Server下载文件到Windows系统上时(不管是二进制或者文本文件),每检测到一个字节是0A,就会自动插入一个0D,所以如果你的文件是二进制文件,比如可执行文件、压缩包什么的,就肯定不能用了。如果你的文件就是UNIX下的文本文件,你用ASCII模式是正确的,要是误用了Binary模式,你在Windows上看这个文件是没有换行的,里面是一个个的黑方块。
    一般来说,我们最好都用Binary方式,这样可以保证不出错。如果有文本格式转换的问题,即UNIX格式的文本和DOS格式的文本之间的转换,有很多工具可以做的,不要在ftp传输的时候冒险,尤其是你如果对这些东西不是非常清楚的话。
 
如何设置FTP的传输方式呢?
    在ftp>提示符下输入ascii即转换到ACSII方式,输入bin,即转换到Binary方式

ftp> ascii
200 Type set to A.

 

ftp> bin
200 Type set to I.

阅读(1071) | 评论(0) | 转发(0) |
0

上一篇:printf 格式输出

下一篇:shell脚本加密

给主人留下些什么吧!~~