cpio

. cpio
   "copy in, copy out".
   cpio用于创建和解开档案,或者拷贝文件。
   a. 创建档案
   % ls | cpio -ov > ../directory.cpio
   : "-o"表示创建档案,"-v" 表示打印加入档案的文件名
   % find . -depth -print | cpio -ov > tree.cpio
   : 结果是把当前目录下的所有文件加入到tree.cpio

   b. 解档案
   % cpio -iv < directory.cpio
   : "-i"表示解开档案
   如果档案中包含目录,应该加上"-d"选项。
   % cpio -idv < tree.cpio

   c. copy-pass mode
   该模式下,cpio从一个目录树拷贝文件到另外一个目录树,是组合了copy-out和copy-in的过程但是没有使用档案。
   % find . -depth -print0 | cpio -null -pvd new-dir
   拷贝当前目录下的文件和子目录到新的目录new-dir。"-print0"和"-null"配合使用,表示每个文件名以空字符结束。这样对于文件名中包含换行符的文件也能拷贝。

   更多例子:
   % bzcat dir.cpio.bz2 | cpio -i
   解压然后解开档案
   % find dir -print | cpio -o | bzip2 > dir.cpio.bz2
   生成档案然后压缩
  
   总结:
   cpio相比tar最大的好处是,比较容易只保存目录中的部分文件到档案中。因为cpio的输入是独立的,可以源自我们熟悉的find, ls或者自己编辑的程序。

 

你可能感兴趣的:(职场,休闲,cpio)