Linux基本指令

1、Linux常用的查找命令

 在Linux下经常会使用到两个查找命令grep和find。其中grep命令常用作包含某个字符串的文件;而find常用于查找匹配制定文件名的文件。

grep命令

其实grep命令是Linux当中一个非常强大的搜索工具,这里之作简单的做简单的字符串匹配查找的相关介绍,大牛勿喷呀,方便日后查阅写给自己的。

grep 要查找的字符串 查找路径 要查找的文件列表(用空格隔开) 参数     //grep查找字符串的格式 

常用参数:-R 递归查找

          -n 显示匹配的文件行号

eg:grep "request_irq" . * -Rn  //查找当前目录下所有文件当中含有字符串request_irq的文件,并                              //给出文件字符串所在的行数。

find命令

find 查找目录 查找条件 [操作]

find命令会根据“查找条件”在“查找目录”下开始递归查询,并根据“操作”指示作相关的操作,当然这里的“操作”是可有可无的,根据需要添加。

注意:查找条件可以是一个复合条件,用逻辑运算符and,or,not来连接在一起

常用参数:-name "字符串" //文件名匹配

          -type x        //制定查找的文件类型为x(b块设备文件,c字符设备文件,s->socket链接                           //文件,p管道文件,d目录文件)

eg:find -name "*demo*" -a -user "bjwl" //在“bjwl”这个用户的所有文件当中查找含                                                //有“demo”字样的文件,其中的-a就是and,同理or                                            //选项的呈现办法就是-o

eg:find !-name "*demo*"               //not选项的用法

eg:find . -name "*so.*" //在当前目录下查找文件名包含“so.”字样的文件,其中的“.”表示当                           //前目录可以省略的,个人建议写上比较好,感觉跟清晰点。

eg:find -name "*so.*"  -exec shell命令 {shell命令的参数} \; 

//对查找到的文件执行“shell命令”命令参数在{}当中 命令以“\;”结束。

管道命令|

其实就是可以执行多条命令

eg:ls rpm | grep bind   //查找一个包的名字是bind的

2、常用的vi编辑器命令

在vi的命令模式下

ndd    //删除光标所在行及后n行

nyy    //复制光标所在行及后n行到剪切板

p      //粘贴

number  //显示行号

nG     //跳到第n行

/string(?string)  向前(后)查找string字符串

%s/string1/string2   //用string1替换整个文件当中的string2

3、压缩和解压缩命令

tar 参数选项 目标文件(.tar.gz或者.tar.bz2) [目录] [-C]

参数介绍:

c 创建压缩文件

x 提取(解)压缩文件

z 以gzip方式(解)压缩

j 以bzip2方式(解)压缩

v 在显示过程

f 表示文件,后面会跟一个文件名

以上组合参数就是参数选项,只有在压缩文件的时候才会用到[目录]指明要压缩的目录,在解压缩的时候是没有的;可以在解压缩的时候用-C 路径 指定解压缩的到哪个目录,可以有v,也可以没有v

eg:tar czf demo.tar.bz2 demo   //压缩

eg:tar xzf demo.tar.bz2        //解压缩

4、补丁命令

补丁文件就是“修改后的文件”与“原始文件”的差别。

由于Linux内核文件包是可以直接从网上荡一个的,如果要发布自己的内核文件只需要把修改定制的内核与标准的内核文件生成一个补丁文件(*.diff),这个文件是很小的,方便发布使用,客户只需要下载标准的内核和我们的diff补丁然后打上补丁就可以使用我们定制的内核。所以补丁文件在实际的产品当中使用时非常好用的。

补丁文件生成

diff 参数 源文件目录 定制后的文件目录 > 补丁.diff

参数说明:

-u       //表示比较结果中输出上下文中一些相同的行,这有利于人工定位。

-r       //表示递归比较子目录下的文件。

-N       //将不存在的文件当做空文件。

-w       //忽略对空格的比较

-B       //忽略对空行的比较

注意:以上参数个人感觉没有哪个是多余的,所有强烈建议,在生成补丁文件的时候可以直接添加上所有参数使用-urNwB

eg:diff -urNwB linux-2.6.22.6 linux-2.6.22.6_ok > linux-2.6.22.6_ok.diff

打补丁命令

patch -pn < 需要打补丁的目录 补丁文件(*.diff)

参数说明:

-p   //首先补丁文件当中指明了要修改的文件路径,-pn表示忽略补丁文件路径的第n个斜线之前目录,      //再去查找源文件

eg:patch -p1 ../ linux-2.6.22.6_ok.diff

//上面的命令表示,打补丁的时候在当前目录的上一级目录下,然后忽略补丁文件当中的目录的第一个斜线之前的目录,去寻找源文件。就是补丁最后打到的位置是:需要打补丁的目录与补丁文件指明的源文件查找路径组合出来的一个目录,当让首先得经过-pn的修改。

Linux基本指令,古老的榕树,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。