Chinaunix首页 | 论坛 | 博客
  • 博客访问: 25983
  • 博文数量: 5
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 43
  • 用 户 组: 普通用户
  • 注册时间: 2015-08-27 19:19
文章分类

全部博文(5)

文章存档

2015年(5)

我的朋友

分类: LINUX

2015-10-21 22:40:10

1、tar命令
    tar命令具有打包、解包、压缩、解压缩4种功能。它常用的压缩、解压缩方式有两种:gzip、bzip2。一般而言,以“.gz”、“.z”结尾的文件是用gzip方式进行压缩的,以“.bz2”结尾的文件是用bizp2方式进行压缩的,后缀中用“tar”是表示这是一个文件包。
    tar命令有5个常用的选项。
    1)“c”:表示创建,用来生成文件包。
    2)“x”:表示提取,从文件包中提取文件。
    3)“z”:使用gzip方式进行处理,它与“c”结合表示压缩,与“x”结合表示解压缩。对应后缀“.gz”、“.z”。
    4)“j”:使用bzip2方式进行处理,它与“c”结合表示压缩,与“x”结合表示解压缩。对应后缀“.bz2”。
    5)“f”:表示文件,后面接一个文件名。
    举例:
    1)压缩:
    tar czf dirA.tar.gz dirA    //将目录dirA以gzip方式压缩为dirA.tar.gz文件包。
    tar cjf dirA.tar.bz2 dirA     //将目录dirA以bzip2方式压缩为dirA.tar.bz2文件包。
    2)解压缩
    tar xzf dirA.tar.gz    //在当前目录以gzip方式解压缩dirA.tar.gz文件包。
    tar xjf dirA.tar.bz2     //在当前目录以bzip2方式解压缩dirA.tar.bz2文件包。
    tar xzf dirA.tar.gz -C    //解压到指定目录
    tar xjf dirA.tar.bz2 -C    //解压到指定目录
2、diff命令
    diff命令常用来比较文件、目录,也可用来制作补丁文件。常用的选项如下:
    1)“-u”在比较结果中输出上下文中一些相同的行,有利于人工定位。
    2)“-r”递归比较各个子目录下的文件。
    3)“-N”将不存在的文件当作空文件。
    4)“-w”忽略对空格的比较。
    5)“-B” 忽略对空行的比较。
    举例:
    diff -urNwB u-boot-1.1.6 u-boot-1.1.6_jz2440 >u-boot-1.1.6_jz2440.diff    比较u-boot-1.1.6(源文件)与u-boot-1.1.6_jz2440(修改后的文件)文件下的文件的不同并输出到u-boot-1.1.6_jz2440.diff。
3、patch命令
    patch命令被用于打补丁——根据补丁文件修改源文件。比如对于上面的例子可以使用一下命令将补丁文件应用到原始目录u-boot-1.1.6上去。假设u-boot-1.1.6_jz2440.diff与u-boot-1.1.6位于同一目录下。
    cd u-boot-1.1.6
    patch -p1 < ../u-boot-1.1.6_jz2440.diff
    patch命令最重要的选项就是“-pn”:补丁文件中指明了要修改的文件的路径,“-pn”表示忽略路径中第n个斜线之前的目录。
    例如diff文件中有一下几行
    diff -urN u-boot-1.1.6/board/100ask24x0/100ask24x0.c u-boot-1.1.6_jz2440/board/100ask24x0/100ask24x0.c
    --- u-boot-1.1.6/board/100ask24x0/100ask24x0.c 1970-01-01 07:00:00.000000000 +0700
    +++ u-boot-1.1.6_jz2440/board/100ask24x0/100ask24x0.c 2010-11-26 12:54:37.034090906 +0800
    上述命令将忽略第一个斜线以前的目录,所以要修改的是当前目录下的/board/100ask24x0/100ask24x0.c。
阅读(2587) | 评论(0) | 转发(0) |
0

上一篇:Jz2440——汇编流水灯

下一篇:没有了

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