lennon's Blog
不入流码农一枚
搜索
uuencode工具的使用
2010年11月05日 04:50 | Comments(0) | Category:Linux | Tags:linux shell uuencode
今天在看一本linux的书籍,其中一个章节的练习中提到了uuencode这个工具,初始不懂,查看man帮助之后,依然不知到如何使用,后面google之,终于明白了,记录之,以防日后忘记,又做重复工作。
下面之介绍简单的uuencode工具的使用。
其实uuencode与uudecode是一套工具,都包含在GNU sharutils package中。其中uuencode用于将二进制文件编码成为ACSII,而uudecode用于将使用uuencode编码的文件还原为原来的二进制文件。
在man中,这样描述uuencode、uudecode的使用语法:
uuencode [-m] [ file ] name uudecode [-o outfile] [ file ]...
在uuencode中,file指明需要编码的文件,如果不指明,则系统以标准输入设备输入,而name用于指明在uuencode编码后的输出数据,使用uudecode还原后,还原的文件名称。这里需要指出的是,uuencode的输出都是直接输出到标准的输出设备,例如:
lennon@lennon-laptop:~/Documents/LearnLinux$ uuencode colors.2.gz test_uuencode begin 644 test_uuencode M'XL("`P;Q$P``V-O;&]R<RXR`"M*3>%*RBE-Y4HO2DW-XZI,S<G)+^?*+TK, -2T_E`@!NZQGI'0``````` end
uuencode输出数据,都是以beging开头,以end结尾的。第一行中,记录编码的信息
- begin后面的644是unix档案调用的权限代码
- 而test_uuencode,指明使用uudecode还原该数据后的文件名
- 后面的字符,就是编码后的结果
如果执行下面命令:
lennon@lennon-laptop:~/Documents/LearnLinux$ uuencode colors.2.gz test_uuencode > uuencode_result
那么将会把编码后的信息存入uuencode_result文件中(由于uuencode的输出是标准输出,所以我们使用重定向命令,将其重定向到uuencode_result中),接着使用解码工具解码:
lennon@lennon-laptop:~/Documents/LearnLinux$ uudecode uuencode_result
将会把uuencode_result文件解码,并且将解码后的结果存放到test_uuencode文件中。
好了,基本的使用就介绍到这里。man中不容易理解的地方就是name参数的意义,其实实在使用uudecode的时候,这个参数的作用才能知道。uuencode、uudecode是成对使用的。理解这个后,其他详细的信息,就参阅man帮助文档吧
参考资料:
来源:http://www.isstudy.com/linux/731.html
命令名称:uuencode
使用权限:所有使用者
使用方式:
uuencode [-hv] [sourcefile] targetfile
说明:
早期在许多 unix 系统的传送协定只能传送七位元字元,并不支援二进位档案,像中文文字档就有用到八位元,所以无法完整地送到另一架机器上。 uuencode 指令,可以将二进位档转换成七位元的档案,传送到另一架机器上再以 uudecode 还原。最常见的是用在以电子邮件传送二进位档。uuencode 编码后的资料都以 begin 开始,以 end 作为结束。
begin 644 decode.dat
(内容编码)
`
end
begin 后的 644 是 unix 档案的调用权限代码。而 decode.dat 则是还原后的档名。
参数:
h 列出指令使用格式 (help)
v 列出版本讯息 (version)
范例:
将 source.dat 编码后存成 file.uud 档。由于 uuencode 会将编码后的资料在荧幕上列出,所以必须将资料导入 file.uud 中,而 target.dat 是 file.uud 还原后的档案名字,而不是编码后的档案。
uuencode [-hv] [sourcefile] targetfile
执行指令后,由标准输入装置读入资料,简单地说是由键盘输入后在荧幕显示的资料,按 Crtl d 键后就会被编码,输出至 file.uud 中。由于程序是以行为处理单位,若无法跳出程序,请多按几次 Ctrl d 直到程序结束为止。 安全技术
uuencode target.dat > file.uud
类似上一个指令,不过使用一个导入的技巧,将 source.dat 压缩后的资料传送给 uuencode 处理之后,存成 file.uud 档。 file.uud 档还原后就是 source.dat.Z 档。
compress -c source.dat | uuencode source.dat.Z > file.uud
显示版本讯息后,结束执行程序。
uuencode -v