Shell 脚本攻略-归档和压缩

tar

  • -cvf c 表示创建归档文件,v 表示显示压缩信息,f 表示指定归档文件名称
  • -xvf x 表示提取归档文件
  • -j 表示 bunzip2 压缩,文件后缀为 .bz2
  • -z 表示 gzip 压缩,文件后缀为 .gz
  • --lzma 表示 lzma 压缩,文件后缀为 .lzma
  • a 表示根据文件扩展名,自动推导压缩算法

zip

  • 和 tar 的区别是,zip 即归档也压缩,tar 只归档不压缩

cp

cp 命令在 copy 目录是比较容易混淆。下面以一些例子为区分:

  • cp -r ./src_dir ./dst_dir
    1. dst_dir 目录不存在,dst_dir 就是 src_dir 的完整 copy
    2. dst_dir 目录存在,则是将 src_dir 本身 copy 到 dst_dir 中
  • cp -r ./src_dir ./dst_dir/ 与上一个命令效果完全相同
  • cp -r ./src_dir/ ./dst_dir,不论 dst_dir 是否存在,都是将 src_dir 的内容 copy 到 dst_dir 中.
  • cp -r ./src_dir/ ./dst_dir/ 与上一个命令效果完全相同
    结论是,不论 dst_dir 是否在最后加 /,对结果都没有影响;src_dir/ 表示不论 dst_dir 是否存在,都只拷贝内容;src_dir 表示 dst_dir 存在,则拷贝本身,否则,拷贝内容。

你可能感兴趣的:(Shell 脚本攻略-归档和压缩)