linux常用命令

来源:互联网 发布:二分搜索算法,c语言 编辑:程序博客网 时间:2024/05/29 18:49

一 、grep

#grep “关键字” –Rn ./* ;查看某个目录下的文件中是否包含某关键字#grep "start" –Rn ./*                   ;./表示当前目录下,*表示查找当前目录下的所有文件,目录,-R表示递归查找子目录,-n表示找到时,输出所在行数#grep"start" –Rn uboot/*            ; uboot表示在uboot目录下搜索,*表示查找当前目录下的所有文件,目录,-R表示递归查找子目录,-n表示找到时,输出所在行数

二、find

查找包含"u-boot.lds"字样的文件#find -name "u-boot.lds" ; 在当前目录及其子目录中文件名查找包含"u-boot.lds"字样的文件#find uboot/ "u-boot.lds"; 在uboot目录及其子目录下查找文件名包含"u-boot.lds"字样的文件

三、xargs

可以使前一个命令的输出作为当前命令参数的命令

# find –name “*so.*” | xargs grep “tan”

四、tar

格式:".gz" ".z"是gzip格式 ;

            ".bz2"是bzip2格式;

            "tar"只是一个文件包

参数:c: 创建,用来生成文件包

            x: 提取,从文件包中提取文件(与参数c不能共用)

            z: gzip格式进行处理,c结合是压缩,x结合是解压

            j: bzip格式进行处理

            f: 表示文件,后面接一个文件名

#tar czf dir1.tar.gz dir1#tar cjf dir1.tar.bz2 dir1#tar xzf dir1.tar.gz#tar xjf dir1.tar.bz2#tar xzf dir1.tar.gz -C <dir> // -C表示 将dir1.tar.gz解开到<dir>目录下

五、diff

用来比较文件,目录,也可以用来制作补丁文件.

-u: 在比较结果中输出上下文一些相同的行,利于人工定位

-r : 递归比较各个子目录下的文件

-N: 将不存在的文件作空文件处理

-b: 忽略空白处的改变

-w: 忽略对空格的比较

-B: 忽略对空行的比较

 如uboot, uboot_done是修改过的,现在做一个uboot的补丁:

#diff-urNwB uboot uboot_done > uboot_done.diff

六、patch

打补丁, 最重要的参数就是

-pn: 意思是忽略路径中第n个斜线之前的目录,如下图


我们在有一个uboot_done.diff的补丁文件,现在想在我们的uboot下面打上补丁,通过

#cat uboot_done.diff参看当前的补丁文件

显然我们希望将test1/test2/test3.c添加到我们的uboot上面,但是不希望uboot_done这个目录也进入uboot目录里面

因为uboot和uboot_done应该是同一级目录,则就应该忽略uboot_done这个目录,即n=1, patch的参数为-p1

/* *-d 指需要打补丁的目录 */#patch <span style="color:#FF0000;">-p1</span> -d uboot/  < uboot_done.diff or#cd uboot#patch <span style="color:#FF0000;">-p1</span> < ../uboot_done.diff


0 0
原创粉丝点击