目录下检索字符串,linux查找目录下的所有文件中

日期:2019-09-19编辑作者:服务器

linux查看目录下全部文件内容中是还是不是富含某些字符串,linux字符串

来源:

寻觅目录下的保有文件中是或不是含有有些字符串
find .|xargs grep -ri “IBM”
招来目录下的富有文件中是否包蕴有些字符串,并且只打印出文件名
find .|xargs grep -ri “IBM” -l
1.正则表明式
(1)正则表明式一般用来陈说文本形式的独特用法,由普通字符(比方字符a-z)以及特殊字符(称为元字符,如/、*、?等)组成。
(2)基本元字符集及其含义
^ :只相称行首。 如^a 相称以a发轫的行abc,a2e,a12,aaa,……
:只相称行尾。   如^a 相称以a结尾的行bca,12a,aaa,…….   
      * :相称0个或多个此单字符。 如(a)* 匹配 空,a,aa,aaa,….   
      [] :只匹配[]内字符。能够是三个单字符,也能够是字符类别,用”,”将内部要合作的不等字符串分开。也得以使用-来表示[]内字符类别的限量,如[1-5]表示[12345]   
       :只用来遮掩三个元字符的出格含义。 如*,’,”,|,+,^,. 等   
      .:(点)只极度大肆单字符。   
      pattern{n}:只用来合营后边pattern出现的次数.n为次数。如a{2}相称aa.   
      pattern{n,}:含义同上,但次数最少为n.如a{2,}相称aa,aaa,aaaa,…..   
      pattern{n,m}:含义同上,但次数在n和m之间。如a{2,4}匹配aa,aaa,aaaa三个   
  (3)比方表达:   
      ^ :相配空行
^.$ :相称包括叁个字符的行
*.pas :匹配以*.pas结尾的具备字符或文件
[0123456789]或[0-9] :假定要协作自便二个数字
[a-z] :放肆小写字母
[A-Za-z] :任性大小写字母
[S,s] :相称大小写S
[0-9]{3}.[0-9]{3}.[0-9]{3}.[0-9]{3} :匹配IP地址 [0-9]{3}四个0-9结缘的字符串;. :相配点(注意这里点是破例的字符,所以要用””来屏蔽其含义)
2.find介绍 (1)查找具备有些特点文件的授命,可遍历当前目录以至于整个文件系统来查阅某个文件或目录,其遍历大的文件系统时一般位于后台试行。
(2)find命令的貌似格局
find pathname -options [-print -exec -ok]
-pathname :find命令所查找的目录路线。如用”.”来表示这段日子的目录,用/来代表系统根目录
-print :find命令将协作的文本输出到规范输出
-exec: find命令对郎才女貌的文书施行该参数所提交的shell命令,相应的下令方式为
‘command’{} ; (注意{}和里头的空格)
-ok 和 -exec的效能一样,只可是以一种越发安全的形式来施行该参数所提交的shell命令,在实施每两个发令在此以前,都会付给提示,让顾客来鲜明是或不是实行。
options有如下二种:
-name :按照文件名查找文件
-perm :依照文件权限来查找文件
-user :遵照文件属主来查找文件
-group :依照文件所属的组来查找文件
-mtime -n +n 根据文件的变动时间来查找文件,-n代表文件退换时间距以后n天以内,+n表示文件更换时间于今后n天从前。find命令还会有-atime 和-ctime选项,但它们都和-mtime选项相似。
-size n[c]查找文件长度为n块的文书,带有c时表示文件长度以字节计。
-nogroup 查找无有效所属组的文书,即该公文所属的组在/etc/groups中官样文章
-newer file1 !file2查找退换时间比文件file1新但比文件file2旧的文书
-depth 先查找钦点目录有无相配文件,若无则再在子目录中探寻
-type 查找某一等级次序的公文,如
b :块设备文件
d:目录
e:字符设备文件
p;管道文件
l:符号链接文件
f:普通文书
(3)find命令比如
find -name “*.txt” -print 查找txt结尾的文件并出口到显示屏上
find /cmd “.sh” -print 查找/cmd目录下有所sh文件,并出口
find . -perm 755 -print 查找当前目录下权限为755的公文,并出口
find pwd -user root -print 查找当前目录下属主为root的文本,并出口
find ./ -group sunwill -print 查找当前目录下所属主是sunwill的文书
find /var -mtime -5 -print 查找/var目录下转移时间为5天内的享有文件
find /var -mtime +5 -print 查找/var目录下改造时间为5天从前的持有文件
find /var -newer “myfile1” ! -newer “myfile2” -print 查找/var目录下比myfile1新,可是比myfile2旧的兼具文件。
find /var -type d -print 查找/var目录下全数目录
find /var -type l -print 查找/var目录下具有的符号链接文件。
find . -size +一千000c -print 查找当前目录下超越一千000字节的公文
find / -name “con.file” -depth -print 查找根目录下有无”con.file”,若无则在其子目录中搜求
find . -type f -exec ls -l {} ; 查找当前目录下是不是有经常文书,若有则施行ls -l
(4)xargs命令
在 使用find命令的-exec选项管理相配到的文书时,find命令将具有相称到的文本一齐传递给exec。不幸的是,有个别系统对能够传递给exec的命 令长度有限制,那样find命令运维几秒钟之后正是出现溢出荒唐。错误音讯常常是“参数列太长”或“参数列溢出”。那正是xargs的用途所在,特别是与 find命令一道利用,exec会倡导七个进程,而xargs会多少个,独有三个
find ./ -perm -7 -print | xargs chmod o-w 查找权限为7的文书并传递给chmod管理
3.grep介绍 (1)grep 的相似格式为 grep [options] 基本正则表明式 [文件]
字符串参数最佳利用是双引号括,一是严防被误会为shell命令,二是足以用来寻找四个单词组成的字符串
-c:只输出相称行的记数
-i:不区分轻重缓急写(只适用于单个字符)
-h:查询七个文件时不显示文件名
-H:只展现文件名
-l:查询多文本时只输出饱含相配字符的文件名
-n:只展现相称行及其行号
-s:不展现不设有或无相称文本的错误音讯。
-v:展现不分包相配文本的享有行。
(2)举个例子表达:
grep ^[^210] myfile 相配myfile中以非2、1、0起始的行
grep “[5-8][6-9][0-3]” myfile 匹配myfile中第壹个人为5|6|7|8,第2个人6|7|8|9,第四人为0|1|2|3的三个字符的行
grep “4{2,4}” myfile 匹配myfile中含有44,444或4444的行
grep “?” myfile相配myfile中包涵大肆字符的行
(3)grep命令类名
[[:upper:]] 表示[A-Z]
[[:alnum:]] 表示[0-9a-zA-Z]
[[:lower:]] 表示[a-z]
[[:space:]] 表示空格大概tab键
[[:digit:]] 表示[0-9]
[[:alpha:]] 表示[a-zA-Z]
如:grep “5[[:digit:]][[:digit:]]” myfile 匹配myfile中包含5始发接下去两位都是数字的行。
4.awk介绍
可以从文件或字符串中基于钦点准则浏览和抽出音信,是一种自解释的变成语言。
(1)awk命令行形式 awk [-F filed-spearator] ‘command’ input-files
awk脚本:全体awk命令插入二个文书,并使awk程序可进行,然后用awk命令解释器作为脚本的首行,以便通过键入脚本名称来调用它。awk脚本是由各个操作和形式组成。
方式部分决定动作语句曾几何时触发及触发事件。(BEGIN,END)
动作对数据进行拍卖,放在{}内指明(print)
(2)分隔符、域和著录
awk实行时,其浏览域标识为1,1,2,…n.这种措施成为域标志。n.。0为全部域。
(3)比方表明:
awk ‘{print 0}' test.txt |tee test.out 输出test.txt中具备行0表示全部域
awk -F : ‘{print 1} test.txt |tee test.out’   同上。。只是分隔符为”:”   
      awk ‘BEGIN {print “IPDaten”}{print $1 "t" $4} END{print “end-of-report”}’ test.txt   
      初始时打字与印刷“IPDate”甘休时打印“end-of-report”中间打字与印刷主体消息,举例总共相配三条音信,则输出如下:  
IPDate   
1 first   
2 second   
3 third   
end-of-report   
  (4)相配操作符 ~ 匹配,!~ 不匹配   
      cat test.txt |awk ‘0~/210.34.0.13/’ 匹配test.txt中为210.34.0.13的行
awk ‘0!~/210.34.0.13’ test.txt     匹配test.txt中不是210.34.0.13的行   
      awk ‘{if($1=="210.34.0.13") print $0}’ test.txt 相配 test.txt中首先个域为210.34.0.13的行。  
5.sed介绍     sed不与初步化文件打交道,它操作的只是三个正片,然后全数的改观若无重定向到贰个文件,将出口到显示屏。   
    sed是一种很首要的公文过滤工具,使用一行命令可能应用管道与grep与awk相结合。是一种非交互性文本流编辑。   
    (1)调用sed的三种方法   
      使用sed命令行格式为:sed [options] sed命令 输入文件   
      使用sed脚本文件格式为:sed[options] -f sed脚本文件 输入文件   
      sed脚本文件[options] 输入文件   
      –不管是使用shell命令行格局或脚本文件情势,若无一些名输入文件,sed从标准输入中收受输入,一般是键盘或重定向结果。   
    (2)sed 命令的options如下   
        -n:不打印   
        -c:下一命令是编写命令   
        -f:要是正在调用sed脚本文件   
    (3)sed在文件中查询文本的主意   
          –使用行号,能够是一个轻巧的数字,或是二个行号的限量   
          –使用正则表明式   
    (4)读取文本的法子   
          x       x为一行号   
          x,y       表示行号范围从x到y   
          /pattern/     查询包涵情势的行   
          /pattern/pattern/ 查询包罗五个形式的行   
          pattern/,x   在给定的行号上询问包括形式的行   
          x,/pattern/   通过行号和情势查询相称行   
          x,y!       查询不分包钦点行号x和y的行   
      (5)基本sed编辑命令   
            p   打印相配行   
            d   删除相称行   
            =   展现文件行号   
            a   在牢固行号后附加新文本新闻   
            i   在定点行号后插入新文本新闻   
            c   用新文本替换定位文本   
            s     使用替换形式替换相应方式   
            r     从另贰个文件中读文件   
            w   写文本到二个文件   
            q     第多个情势相配完毕后推出或及时退出   
            l     突显与八禁止ASCII代码等价的主宰字符   
            {}   在一定行推行的吩咐组   
            n     从另三个文书中读文件下一行,并附加在下一行   
            g     将模式2粘贴到/pattern n/   
            y     传送字符   
    (6)比如表明:   
          sed -n ‘2p’ test.txt 打字与印刷第二行的新闻(注意:-n是不打字与印刷不包容的消息,若没加-n,则打字与印刷文件的具有音信实际不是相配音信)   
          sed -n ‘1,4p’ test.txt 打字与印刷第一行到第四行的音信   
          sed -n ‘/los/p’ test.txt方式相配los,并打字与印刷出来   
          sed -n ‘2,/los/p’ test.txt 从第二行起头。。知道相配第四个los   
          sed -n ‘/^/p’ test.txt 相称空行
sed -n -e ‘/^/p' -e '/^/=’ test.txt 打字与印刷空行及行号
sed -n ‘/good/amorning’ test.txt 在格外到的good后边附加morning
sed -n ‘/good/imorning’ test.txt 在同盟到的good前边插入morning
sed -n ‘/good/cmorning’ test.txt 将相称到的good替换成morning
sed ‘1,2d’ test.txt 删除第1和2行
sed ‘s/good/good morning/g’ test.txt 匹配good并替换来goodmorning
send ‘s/good/& hello /p’ test.txt 匹配到good就在其后边加上hello
send ‘s/good/ hello &/p’ test.txt 匹配到good就在其前方加上hello
6.合并与分割(sort,uniq,join,cut,paste,split) (1)sot命令
sort [options] files 大多比不上的域按区别的列顺序排序
-c 测验文件是不是早就排序
-m 合併四个排序文件
-u 删除全体同一行
-o 存款和储蓄sort结果的出口文件名
-t 域分隔符,用非空格或tab早先排序
+n :n 为列号,使用此列号起初排序
-n 钦定排序是域上的数字分类项
-r 相比较求逆
sort -c test.txt 测验文件是还是不是分类过
sort -u test.txt 排序并统一同样的行
sort -r test.txt 以相反的顺序排列
sort -t “/” +2 test.txt 以”/”分隔,第二个域初阶分类
(2)uniq命令
uniq [options ] files 从二个文书文件中删去或禁止重复行
-u 只突显不重复行
-d 只展现成双重数据行,各类重复行只呈现在那之中一行
-c 打字与印刷每一重复行出现次数
-f :n为数字,前n个域被忽略
uniq -f 2 test.txt 忽略前2个域
(3)join 命令
join [options] file1 file2 用来现在自八个分类文本文件的行连在一块
-an,n为一数字,用于连接时从文件n中突显不相称行
-onm ,连接域,n为文件号,m为域号
-jnm,n为文件号,m为域号,使用其余域作连接域
-t ,域分隔符。用来设置非空格或tab键的域分隔符。
(4)split命令
split -output_file_size intput_filename output_filename
用来将大文件分割成小文件。
-b n,每个分割文件的大小n
-C n,每个分割文件一行最多n字节
-l n,每种分割文件的行数
-n,同-l n
split -10 test.txt 将test.txt分割成10行的小文件
(5)cut 命令
cut -c n1-n2 filename 展现每行从初步算起 n1 到 n2 的文字。
cut -c 3-5 test.txt 显示test.txt中每行从第3到第5个字符

Linux大杀器命令:查找全数目录下的有着文件的字符串命令

命令为:
find . |xargs grep -ri “bspSetPonTxDisable” -l**

寻找目录下的具备文件中是或不是包蕴某些字符串
find .|xargs grep -ri “IBM”
招来目录下的具备文件中是或不是带有有个别字符串,并且只打印出文件名
find .|xargs grep -ri “IBM” -l

搜索目录下的有所文件中是还是不是含有有些字符串,而且只打字与印刷出文件名
find . -name "*.type" | xargs grep -ri "str"

追寻目录下的具有文件中是还是不是包蕴有些字符串 
find .|xargs grep -ri "IBM" 
检索目录下的具有文件中是或不是带有有些字符串,况且只打字与印刷出文件名 
find .|xargs grep -ri "IBM" -l 
1.正则表明式  
  (1)正则表明式一般用来说述文本形式的超过常规规用法,由一般字符(比方字符a-z)以及特殊字符(称为元字符,如/、*、?等)组成。 
  (2)基本元字符集及其含义 
      ^ :只相称行首。   如^a 匹配以a初步的行abc,a2e,a12,aaa,...... 
      $ :只相配行尾。   如^a 相配以a结尾的行bca,12a,aaa,....... 
      * :相配0个或多少个此单字符。 如(a)* 匹配 空,a,aa,aaa,.... 
      [] :只匹配[]内字符。能够是叁个单字符,也足以是字符类别,用","将中间要协作的两样字符串分开。也能够利用-来表示[]内字符系列的界定,如[1-5]表示[12345] 
       :只用来掩饰二个元字符的特别意义。 如*,',",|,+,^,. 等 
      .:(点)只至十分的大肆单字符。 
      pattern{n}:只用来合营前边pattern出现的次数.n为次数。如a{2}匹配aa. 
      pattern{n,}:含义同上,但次数至少为n.如a{2,}匹配aa,aaa,aaaa,..... 
      pattern{n,m}:含义同上,但次数在n和m之间。如a{2,4}匹配aa,aaa,aaaa三个 
  (3)比方表达: 
      ^$ :相称空行 
      ^.$ :相称包蕴叁个字符的行 
    *.pas :匹配以*.pas结尾的有所字符或文件 
    [0123456789]或[0-9] :假定要合作放肆一个数字 
    [a-z] :率性小写字母 
    [A-Za-z] :猖獗大小写字母 
    [S,s] :相称大小写S 
    [0-9]{3}.[0-9]{3}.[0-9]{3}.[0-9]{3} :匹配IP地址 [0-9]{3}八个0-9组合的字符串;. :相配点(注意这里点是极其的字符,所以要用""来屏蔽其意义) 
2.find介绍   (1)查找具备某个特征文件的通令,可遍历当前目录以至于整个文件系统来查看有些文件或目录,其遍历大的文件系统时相似位于后台推行。 
  (2)find命令的貌似格局 
      find pathname -options [-print -exec -ok] 
      -pathname :find命令所查找的目录路线。如用"."来表示近些日子的目录,用/来代表系统根目录 
      -print :find命令将相称的文本输出到标准输出 
      -exec: find命令对佳人才子的文本试行该参数所提交的shell命令,相应的命令情势为 
        'command'{} ; (注意{}和里面包车型客车空格) 
      -ok 和 -exec的功效同样,只可是以一种特别安全的格局来实施该参数所付出的shell命令,在实行每二个下令在此之前,都会提交提醒,让客户来明确是或不是实践。 
    options有如下三种: 
    -name :根据文件名查找文件 
    -perm :依据文件权限来查找文件 
    -user :依据文件属主来查找文件 
    -group :依据文件所属的组来查找文件 
    -mtime -n +n 根据文件的改观时间来查找文件,-n表示文件退换时间距以往n天之内,+n代表文件更换时间距未来n天在此以前。find命令还应该有-atime 和-ctime选项,但它们都和-mtime选项相似。 
    -size n[c]查找文件长度为n块的文书,带有c时表示文件长度以字节计。 
    -nogroup 查找无有效所属组的文书,即该公文所属的组在/etc/groups中荒诞不经 
    -newer file1 !file2查找改变时间比文件file1新但比文件file2旧的文书 
    -depth 先查找钦点目录有无相配文件,若无则再在子目录中查找 
    -type 查找某一门类的文件,如 
      b :块设备文件 
      d:目录 
      e:字符设备文件 
      p;管道文件 
      l:符号链接文件 
      f:普通文书 
  (3)find命令举个例子 
      find -name "*.txt" -print 查找txt结尾的公文并出口到显示器上 
      find /cmd ".sh" -print 查找/cmd目录下具备sh文件,并出口 
      find . -perm 755 -print 查找当前目录下放权力限为755的文本,并出口 
      find `pwd` -user root -print 查找当前目录下属主为root的文书,并出口 
      find ./ -group sunwill -print 查找当前目录下所属主是sunwill的文件 
      find /var -mtime -5 -print 查找/var目录下转移时间为5天内的持有文件 
      find /var -mtime +5 -print 查找/var目录下改造时间为5天在此从前的兼具文件 
      find /var -newer "myfile1" ! -newer "myfile2" -print 查找/var目录下比myfile1新,不过比myfile2旧的具有文件。 
      find /var -type d -print 查找/var目录下具备目录 
      find /var -type l -print 查找/var目录下具备的标记链接文件。 
      find . -size +一千000c -print 查找当前目录下超过1000000字节的文件 
      find / -name "con.file" -depth -print 查找根目录下有无"con.file",若无则在其子目录中查找 
      find . -type f -exec ls -l {} ; 查找当前目录下是还是不是有平时文书,若有则实践ls -l 
    (4)xargs命令 
      在 使用find命令的-exec选项管理般配到的公文时,find命令将具备相称到的公文一齐传递给exec。不幸的是,有个别系统对能够传递给exec的命 令长度有限定,那样find命令运营几分钟今后正是出现溢出错误。错误音信日常是“参数列太长”或“参数列溢出”。那正是xargs的用处所在,非常是与 find命令一道使用,exec会发起多个经过,而xargs会七个,唯有一个 
      find ./ -perm -7 -print | xargs chmod o-w 查找权限为7的公文并传递给chmod管理 
3.grep介绍   (1)grep 的一般格式为 grep [options] 基本正则表明式 [文件] 
      字符串参数最棒使用是双引号括,一是防备被误解为shell命令,二是能够用来寻觅多少个单词组成的字符串 
      -c:只输出相称行的记数 
      -i:不区分轻重缓急写(只适用于单个字符) 
      -h:查询三个公文时不展现文件名 
      -H:只呈现文件名 
      -l:查询多文件时只输出包蕴相配字符的文书名 
      -n:只体现相称行及其行号 
      -s:不显得子虚乌有或无相称文本的错误新闻。 
      -v:突显不带有相配文本的全部行。 
  (2)比如表明: 
      grep ^[^210] myfile 相配myfile中以非2、1、0最初的行 
      grep "[5-8][6-9][0-3]" myfile 相称myfile中首先位为5|6|7|8,第4位6|7|8|9,第二人为0|1|2|3的多个字符的行 
      grep "4{2,4}" myfile 匹配myfile中含有44,444或4444的行 
      grep "?" myfile相称myfile中包含大肆字符的行 
  (3)grep命令类名 
      [[:upper:]]   表示[A-Z] 
      [[:alnum:]]   表示[0-9a-zA-Z] 
      [[:lower:]]   表示[a-z] 
      [[:space:]]   表示空格恐怕tab键 
      [[:digit:]]   表示[0-9] 
      [[:alpha:]]   表示[a-zA-Z] 
    如:grep "5[[:digit:]][[:digit:]]" myfile 相配myfile中隐含5发端接下去两位都以数字的行。 
4.awk介绍 
能够从文件或字符串中基于钦命法规浏览和收取音讯,是一种自解释的成为语言。 
(1)awk命令市场价格势 awk [-F filed-spearator] 'command' input-files 
    awk脚本:全体awk命令插入叁个文件,并使awk程序可举办,然后用awk命令解释器作为脚本的首行,以便通过键入脚本名称来调用它。awk脚本是由各样操作和方式组成。 
    情势部分决定动作语句何时触发及触发事件。(BEGIN,END) 
    动作对数据开展拍卖,放在{}内指明(print) 
(2)分隔符、域和记录 
    awk实践时,其浏览域标志为$1,$2,...$n.这种艺术成为域标志。$0为全体域。 
(3)举个例子表达: 
      awk '{print $0}' test.txt |tee test.out 输出test.txt中享有行$0表示具备域 
      awk -F : '{print $1} test.txt |tee test.out'   同上。。只是分隔符为":" 
      awk 'BEGIN {print "IPDaten"}{print $1 "t" $4} END{print "end-of-report"}' test.txt 
      初步时打字与印刷“IPDate”甘休时打字与印刷“end-of-report”中间打字与印刷主体消息,例如总共相称三条消息,则输出如下:   
IPDate 
1 first 
2 second 
3 third 
end-of-report 
  (4)相配操作符 ~ 匹配,!~ 不匹配 
      cat test.txt |awk '$0~/210.34.0.13/' 匹配test.txt中为210.34.0.13的行 
      awk '$0!~/210.34.0.13' test.txt     匹配test.txt中不是210.34.0.13的行 
      awk '{if($1=="210.34.0.13") print $0}' test.txt 相称test.txt中首先个域为210.34.0.13的行。
5.sed介绍     sed不与伊始化文件打交道,它操作的只是二个正片,然后全部的改观若无重定向到叁个文件,将出口到显示屏。 
    sed是一种很要紧的公文过滤工具,使用一行命令只怕利用管道与grep与awk相结合。是一种非交互性文本流编辑。 
    (1)调用sed的两种方法 
      使用sed命令行格式为:sed [options] sed命令 输入文件 
      使用sed脚本文件格式为:sed[options] -f sed脚本文件 输入文件 
      sed脚本文件[options] 输入文件 
      --不管是采纳shell命令行格局或脚本文件措施,如果未有一点名输入文件,sed从标准输入中承受输入,一般是键盘或重定向结果。 
    (2)sed 命令的options如下 
        -n:不打印 
        -c:下一发令是编制命令 
        -f:假使正在调用sed脚本文件 
    (3)sed在文书中询问文本的不二等秘书技 
          --使用行号,能够是三个大约的数字,或是二个行号的范围 
          --使用正则表明式 
    (4)读取文本的措施 
          x       x为一行号 
          x,y       表示行号范围从x到y 
          /pattern/     查询包罗格局的行 
          /pattern/pattern/ 查询包罗三个形式的行 
          pattern/,x   在加以的行号上询问满含形式的行 
          x,/pattern/   通过行号和方式查询相称行 
          x,y!       查询不带有钦命行号x和y的行 
      (5)基本sed编辑命令 
            p   打字与印刷相配行 
            d   删除相配行 
            =   展现文件行号 
            a   在固化行号后附加新文本音信 
            i   在定位行号后插入新文本音信 
            c   用新文本替换定位文本 
            s     使用替换情势替换相应格局 
            r     从另八个文本中读文件 
            w   写文本到三个文本 
            q     第二个形式相配完毕后推出或及时退出 
            l     展现与八禁止ASCII代码等价的支配字符 
            {}   在一直行施行的指令组 
            n     从另八个文件中读文件下一行,并附加在下一行 
            g     将模式2粘贴到/pattern n/ 
            y     传送字符 
    (6)比方表达: 
          sed -n '2p' test.txt 打字与印刷第二行的新闻(注意:-n是不打字与印刷不相配的音讯,若没加-n,则打字与印刷文件的全部音讯而不是相称新闻) 
          sed -n '1,4p' test.txt 打字与印刷第一行到第四行的新闻 
          sed -n '/los/p' test.txt格局相称los,并打字与印刷出来 
          sed -n '2,/los/p' test.txt 从第二行开始。。知道匹配第一个los 
          sed -n '/^$/p' test.txt 相称空行 
          sed -n -e '/^$/p' -e '/^$/=' test.txt 打字与印刷空行及行号 
          sed -n '/good/amorning' test.txt 在同盟到的good后边附加morning 
          sed -n '/good/imorning' test.txt 在合营到的good前边插入morning 
          sed -n '/good/cmorning' test.txt 将相配到的good替换来morning 
          sed '1,2d' test.txt 删除第1和2行 
          sed 's/good/good morning/g' test.txt 相称good并替换到goodmorning 
          send 's/good/& hello /p' test.txt 相配到good就在其背后加上hello 
          send 's/good/ hello &/p' test.txt 相称到good就在其前方加上hello 
6.合併与分割(sort,uniq,join,cut,paste,split)     (1)sot命令 
        sort [options] files 相当多两样的域按不一样的列顺序排序 
          -c 测验文件是还是不是早就排序 
          -m 合併八个排序文件 
          -u 删除全体同一行 
          -o 存款和储蓄sort结果的出口文件名 
          -t 域分隔符,用非空格或tab初阶排序 
          +n :n 为列号,使用此列号起始排序 
          -n 指定排序是域上的数字分类项 
          -r 比较求逆 
        sort -c test.txt 测验文件是还是不是分类过 
        sort -u test.txt 排序并联左券样的行 
        sort -r test.txt 以相反的顺序排列 
        sort -t "/" +2 test.txt 以"/"分隔,第3个域开头分类 
      (2)uniq命令 
          uniq [options ] files 从二个文本文件中删除或禁止重复行 
          -u 只显示不另行行 
          -d 只突显有再度数据行,各样重复行只呈现中间一行 
          -c 打字与印刷每一重复行出现次数 
          -f :n为数字,前n个域被忽略 
          uniq -f 2 test.txt 忽略前2个域 
      (3)join 命令 
          join [options] file1 file2 用来今后自三个分类文本文件的行连在联合 
          -an,n为一数字,用于连接时从文件n中显示不相称行 
          -onm ,连接域,n为文件号,m为域号 
          -jnm,n为文件号,m为域号,使用其余域作连接域 
          -t ,域分隔符。用来设置非空格或tab键的域分隔符。 
        (4)split命令 
          split -output_file_size intput_filename output_filename 
          用来将大文件分割成小文件。 
            -b n,各类分割文件的轻重n 
            -C n,每种分割文件一行最多n字节 
            -l n,每种分割文件的行数 
            -n,同-l n 
            split -10 test.txt 将test.txt分割成10行的小文件 
        (5)cut 命令 
          cut -c n1-n2 filename 突显每行从开首算起 n1 到 n2 的文字。 

1.正则表明式

(1)正则表明式一般用来说述文本格局的特有用法,由一般性字符(举例字符a-z)以及特殊字符(称为元字符,如/、*、?等)组成。
(2)基本元字符集及其含义
^ :只相配行首。 如^a 相配以a起首的行abc,a2e,a12,aaa,……
$ :只匹配行尾。 如^a 相配以a结尾的行bca,12a,aaa,…….
* :相称0个或八个此单字符。 如(a)* 匹配 空,a,aa,aaa,….
[] :只匹配[]内字符。能够是多少个单字符,也得以是字符连串,用”,”将内部要协作的不如字符串分开。也足以应用-来表示[]内字符连串的限制,如[1-5]表示[12345]
:只用来掩盖三个元字符的非正规意义。 如*,’,”,|,+,^,. 等
.:(点)只分外任意单字符。
pattern{n}:只用来同盟前边pattern出现的次数.n为次数。如a{2}相配aa.
pattern{n,}:含义同上,但次数至少为n.如a{2,}相配aa,aaa,aaaa,…..
pattern{n,m}:含义同上,但次数在n和m之间。如a{2,4}相称aa,aaa,aaaa多少个
(3)比方表明:
^:相配空行. :相称富含二个字符的行
*.pas :匹配以*.pas结尾的具有字符或文件
[0123456789]或[0-9] :假定要合作率性一个数字
[a-z] :大肆小写字母
[A-Za-z] :大肆大小写字母
[S,s] :相配大小写S
[0-9]{3}.[0-9]{3}.[0-9]{3}.[0-9]{3} :匹配IP地址 [0-9]{3}四个0-9构成的字符串;. :相称点(注意这里点是破例的字符,所以要用””来屏蔽其意义)

**

一、find 指令
(1)查找具有有个别特征文件的通令,可遍历当前目录乃至于整个文件系统来查看某个文件或目录,其遍历大的文件系统时相似位于后台施行。
(2)find命令的相似情势
find pathname -options [-print -exec -ok]
-pathname :find命令所查找的目录路线。如用"."来表示方今的目录,用/来表示系统根目录
-print :find命令将协作的公文输出到正规输出

          cut -c 3-5 test.txt 显示test.txt中每行从第3到第5个字符

2.find介绍

**
(1)查找具备某个特点文件的指令,可遍历当前目录以至于整个文件系统来查阅有些文件或目录,其遍历大的文件系统时一般位于后台推行。
(2)find命令的相似形式
find pathname -options [-print -exec -ok]
-pathname :find命令所查找的目录路线。如用”.”来表示前段时间的目录,用/来代表系统根目录
-print :find命令将合作的文件输出到正式输出
-exec: find命令对男才女貌的文件施行该参数所提交的shell命令,相应的一声令下方式为
‘command’{} ; (注意{}和以内的空格)
-ok 和 -exec的效应同样,只然而以一种更加安全的格局来实践该参数所提交的shell命令,在施行每二个下令在此之前,都会交到提醒,让客商来规定是否施行。
options有如下三种:
-name :依照文件名查找文件
-perm :依据文件权限来查找文件
-user :遵照文件属主来查找文件
-group :根据文件所属的组来查找文件
-mtime -n +n 依照文件的改观时间来查找文件,-n表示文件改造时间现今后n天之内,+n代表文件更换时间距未来n天从前。find命令还应该有-atime 和-ctime选项,但它们都和-mtime选项相似。
-size n[c]查找文件长度为n块的文书,带有c时表示文件长度以字节计。
-nogroup 查找无有效所属组的文书,即该公文所属的组在/etc/groups中子虚乌有
-newer file1 !file2查找退换时间比文件file1新但比文件file2旧的文书
-depth 先查找钦定目录有无相称文件,若无则再在子目录中寻觅
-type 查找某一类型的公文,如
b :块设备文件
d:目录
e:字符设备文件
p;管道文件
l:符号链接文件
f:普通文书
(3)find命令举个例子
find -name “*.txt” -print 查找txt结尾的文书并出口到显示器上
find /cmd “.sh” -print 查找/cmd目录下具有sh文件,并出口
find . -perm 755 -print 查找当前目录下放权力限为755的公文,并出口
find pwd -user root -print 查找当前目录下属主为root的文本,并出口
find ./ -group sunwill -print 查找当前目录下所属主是sunwill的文书
find /var -mtime -5 -print 查找/var目录下改动时间为5天内的具有文件
find /var -mtime +5 -print 查找/var目录下转移时间为5天在此之前的享有文件
find /var -newer “myfile1” ! -newer “myfile2” -print 查找/var目录下比myfile1新,不过比myfile2旧的有所文件。
find /var -type d -print 查找/var目录下具备目录
find /var -type l -print 查找/var目录下全部的暗记链接文件。
find . -size +一千000c -print 查找当前目录下超过1000000字节的文书
find / -name “con.file” -depth -print 查找根目录下有无”con.file”,若无则在其子目录中搜索
find . -type f -exec ls -l {} ; 查找当前目录下是还是不是有普普通通文书,若有则举行ls -l
(4)xargs命令
在 使用find命令的-exec选项管理相配到的文本时,find命令将装有相称到的文本一同传递给exec。不幸的是,有个别系统对能够传递给exec的命 令长度有限定,那样find命令运维几分钟以往正是出现溢出错误。错误消息常常是“参数列太长”或“参数列溢出”。那正是xargs的用途所在,特别是与 find命令一道利用,exec会倡导几个进度,而xargs会多少个,独有一个
find ./ -perm -7 -print | xargs chmod o-w 查找权限为7的文件并传递给chmod管理

-exec: find命令对郎才女貌的文件进行该参数所付出的shell命令,相应的授命格局为 'command'{} ; (注意{}和以内的空格)
eg:
find . -name "*.png" -exce rm -rf {} ;

find .|xargs grep -ri "IBM" 查找目录下的有所文件中是还是不是含有有些字符串,并且只打字与印刷出文件名 fi...

3.grep介绍

(1)grep 的相似格式为 grep [options] 基本正则表明式 [文件]
字符串参数最好利用是双引号括,一是谨防被误解为shell命令,二是能够用来查找多个单词组成的字符串
-c:只输出相称行的记数
-i:不区分轻重缓急写(只适用于单个字符)
-h:查询多个文件时不彰显文件名
-H:只呈现文件名
-l:查询多文本时只输出包括相配字符的文件名
-n:只展现相称行及其行号
-s:不彰显不设有或无相配文本的错误音信。
-v:呈现不包含相称文本的享有行。
(2)比如表明:
grep ^[^210] myfile 匹配myfile中以非2、1、0开头的行
grep “[5-8][6-9][0-3]” myfile 相称myfile中第一人为5|6|7|8,第二个人6|7|8|9,第几位为0|1|2|3的多少个字符的行
grep “4{2,4}” myfile 匹配myfile中含有44,444或4444的行
grep “?” myfile相称myfile中蕴涵任性字符的行
(3)grep命令类名
[[:upper:]] 表示[A-Z]
[[:alnum:]] 表示[0-9a-zA-Z]
[[:lower:]] 表示[a-z]
[[:space:]] 表示空格也许tab键
[[:digit:]] 表示[0-9]
[[:alpha:]] 表示[a-zA-Z]
如:grep “5[[:digit:]][[:digit:]]” myfile 相称myfile中含有5开端接下去两位都以数字的行。

-ok 和 -exec的机能同样,只不过以一种越发安全的格局来实践该参数所付出的shell命令,在推行每一个下令从前,都会交到提醒,让客商来规定是或不是实行。
options有如下两种:
-name :遵照文件名查找文件
-perm :根据文件权限来查找文件
-user :遵照文件属主来查找文件
-group :依照文件所属的组来查找文件
-mtime -n +n 根据文件的更改时间来查找文件,
-n代表文件改造时间距未来n天以内,
+n表示文件改动时间距今后n天从前。
find命令还会有-atime 和-ctime选项,但它们都和-mtime选项相似。
-size n[c]查找文件长度为n块的文件,带有c时表示文件长度以字节计。
-nogroup 查找无有效所属组的文件,即该公文所属的组在/etc/groups中不设有
-newer file1 !file2查找改换时间比文件file1新但比文件file2旧的文书
-depth 先查找钦命目录有无相称文件,若无则再在子目录中搜索
-type 查找某一门类的文件,如 b :块设备文件 d:目录 e:字符设备文件 p;管道文件 l:符号链接文件 f:普通文书
(3)find命令比方
find -name "*.txt" -print 查找txt结尾的公文并出口到显示器上
find /cmd ".sh" -print 查找/cmd目录下具备sh文件,并出口
find . -perm 755 -print 查找当前目录下放权力限为755的文本,并出口
find 'pwd' -user root -print 查找当前目录下属主为root的文书,并出口
find ./ -group sunwill -print 查找当前目录下所属主是sunwill的文件
find /var -mtime -5 -print 查找/var目录下转移时间为5天内的兼具文件
find /var -mtime +5 -print 查找/var目录下改造时间为5天以前的具备文件
find /var -newer "myfile1" ! -newer "myfile2" -print 查找/var目录下比myfile1新,不过比myfile2旧的持有文件。
find /var -type d -print 查找/var目录下全部目录
find /var -type l -print 查找/var目录下具有的标识链接文件。
find . -size +1000000c -print 查找当前目录下超越壹仟000字节的公文
find / -name "con.file" -depth -print 查找根目录下有无"con.file",若无则在其子目录中寻找
find . -type f -exec ls -l {} ; 查找当前目录下是还是不是有平日文书,若有则实施ls -l
二、xargs命令
在 使用find命令的-exec选项管理相配到的文书时,find命令将具备匹配到的文本一齐传递给exec。不幸的是,某个系统对能够传递给exec的命 令长度有限定,这样find命令运营几分钟过后正是出现溢出错误。错误音讯常常是“参数列太长”或“参数列溢出”。
那正是xargs的用处所在,极度是与 find命令一道使用,exec会倡导五个进程,而xargs会八个,唯有二个
find ./ -perm -7 -print | xargs chmod o-w 查找权限为7的文件并传递给chmod管理
三.grep介绍
(1)grep 的一般格式为 grep [options] 基本正则表达式 [文件] 字符串参数最佳应用是双引号括,一是严防被误解为shell命令,二是足以用来搜索三个单词组成的字符串
-c:只输出相称行的记数
-i:不区分轻重缓急写(只适用于单个字符)
-h:查询三个公文时不呈现文件名
-H:只展现文件名
-l:查询多文件时只输出包涵匹配字符的公文名
-n:只体现相配行及其行号
-s:不出示不设有或无相配文本的错误音信。
-v:展现不含有匹配文本的具有行。
(2)比如表明:
grep [210] myfile 相称myfile中以非2、1、0开始的行
grep "[5-8][6-9][0-3]" myfile 相称myfile中率先位为5|6|7|8,第几个人6|7|8|9,第四人为0|1|2|3的多少个字符的行
grep "4{2,4}" myfile 匹配myfile中含有44,444或4444的行
grep "?" myfile相称myfile中含有自便字符的行
(3)grep命令类名 [[:upper:]] 表示[A-Z] [[:alnum:]] 表示[0-9a-zA-Z] [[:lower:]] 表示[a-z] [[:space:]] 表示空格可能tab键 [[:digit:]] 表示[0-9] [[:alpha:]] 表示[a-zA-Z] 如:grep "5[[:digit:]][[:digit:]]" myfile 匹配myfile中带有5始发接下去两位都是数字的行。

4.awk介绍

能够从文件或字符串中基于内定法则浏览和抽出消息,是一种自解释的成为语言。
(1)awk命令市价势 awk [-F filed-spearator] ‘command’ input-files
awk脚本:全体awk命令插入叁个文件,并使awk程序可施行,然后用awk命令解释器作为脚本的首行,以便通过键入脚本名称来调用它。awk脚本是由各个操作和格局组成。
格局部分决定动作语句哪天触发及触发事件。(BEGIN,END)
动作对数码举行拍卖,放在{}内指明(print)
(2)分隔符、域和记录
awk试行时,其浏览域标志为1,2,…n.这种措施成为域标志。0为全部域。
(3)比如表明:
awk '{print $0}' test.txt |tee test.out 输出test.txt中保有行$0表示全部域

awk -F : ‘{print $1} test.txt |tee test.out’

同上。。只是分隔符为”:”

awk ‘BEGIN {print “IPDaten”}{print 1"t"4} END{print
“end-of-report”}’ test.txt

开端时打字与印刷“IPDate”截至时打字与印刷“end-of-report”中间打字与印刷主体音信,例如总共相称三条音信,则输出如下:
IPDate
1 first
2 second
3 third
end-of-report
(4)相称操作符 ~ 匹配,!~ 不匹配
cat test.txt |awk ‘0/210.34.0.13/′匹配test.txt中为210.34.0.13的行awk‘0!~/210.34.0.13’ test.txt 匹配test.txt中不是210.34.0.13的行
awk ‘{if(1=="210.34.0.13")print0}’ test.txt 相称test.txt中首先个域为210.34.0.13的行。

四.awk介绍 能够从文件或字符串中基于钦点准绳浏览和抽出音信,是一种自解释的形成语言。 (1)awk命令行情势 awk [-F filed-spearator] 'command' input-files awk脚本:全部awk命令插入三个文件,并使awk程序可进行,然后用awk命令解释器作为脚本的首行,以便通过键入脚本名称来调用它。awk脚本是由各个操作和形式组成。 格局部分决定动作语句什么时候触发及触发事件。(BEGIN,END) 动作对数据开展管理,放在{}内指明(print)
(2)分隔符、域和笔录 awk施行时,其浏览域标记为$1,$2,...$n.这种艺术成为域标记。$0为全部域。
(3)举例表达:
awk '{print $0}' test.txt |tee test.out 输出test.txt中保有行$0表示全数域
awk -F : '{print $1} test.txt |tee test.out' 同上。。只是分隔符为":"
awk 'BEGIN {print "IPDaten"}{print $1 "t" $4} END{print "end-of-report"}' test.txt 初阶时打字与印刷“IPDate”甘休时打字与印刷“end-of-report”中间打字与印刷主体消息,比方总共相配三条新闻,则输出如下: IPDate 1 first 2 second 3 third end-of-report
(4)匹配操作符 ~ 匹配,!~ 不匹配
cat test.txt |awk '$0~/210.34.0.13/' 匹配test.txt中为210.34.0.13的行
awk '$0!~/210.34.0.13' test.txt 匹配test.txt中不是210.34.0.13的行
awk '{if($1=="210.34.0.13") print $0}' test.txt 相配test.txt中首先个域为210.34.0.13的行。五、五、sed介绍
sed不与初步化文件打交道,它操作的只是一个正片,然后全体的改造若无重定向到贰个文件,将出口到显示屏。
sed是一种很主要的文书过滤工具,使用一行命令或许应用管道与grep与awk相结合。是一种非交互性文本流编辑。
(1)调用sed的二种艺术
选拔sed命令行格式为:sed [options] sed命令 输入文件 使用sed脚本文件格式为:sed[options] -f sed脚本文件 输入文件 sed脚本文件[options] 输入文件 --不管是使用shell命令行方式或脚本文件措施,若无一点点名输入文件,sed从业内输入中承受输入,一般是键盘或重定向结果。
(2)sed 命令的options如下 -n:不打字与印刷 -c:下一指令是编写制定命令 -f:假若正在调用sed脚本文件
(3)sed在文书中询问文本的主意 --使用行号,能够是一个简短的数字,或是一个行号的范围 --使用正则表明式
(4)读取文本的方法 x x为一行号 x,y 表示行号范围从x到y /pattern/ 查询富含形式的行 /pattern/pattern/ 查询包含七个格局的行 pattern/,x 在加以的行号上查询包罗格局的行 x,/pattern/ 通过行号和格局查询相称行 x,y! 查询不包涵钦命行号x和y的行
(5)基本sed编辑命令 p 打字与印刷相配行 d 删除匹配行 = 展现文件行号 a 在牢固行号后附加新文本音信 i 在确定地点行号后插入新文本音讯 c 用新文本替换定位文本 s 使用替换形式替换相应格局 r 从另壹个文书中读文件 w 写文本到三个文本 q 第三个方式匹配完结后推出或及时退出 l 呈现与八禁止ASCII代码等价的主宰字符 {} 在定位行施行的下令组 n 从另多个文本中读文件下一行,并附加在下一行 g 将格局2粘贴到/pattern n/ y 传送字符
(6)比方表明: sed -n '2p' test.txt 打字与印刷第二行的信息(注意:-n是不打字与印刷不相称的新闻,若没加-n,则打字与印刷文件的装有音讯并不是卓殊消息) sed -n '1,4p' test.txt 打印第一行到第四行的新闻 sed -n '/los/p' test.txt格局相称los,并打印出来 sed -n '2,/los/p' test.txt 从第二行开首。。知道相称第贰个los sed -n '/^$/p' test.txt 相称空行 sed -n -e '/^$/p' -e '/^$/=' test.txt 打字与印刷空行及行号 sed -n '/good/amorning' test.txt 在相当到的good后边附加morning sed -n '/good/imorning' test.txt 在合营到的good后面插入morning sed -n '/good/cmorning' test.txt 将非常到的good替换来morning sed '1,2d' test.txt 删除第1和2行 sed 's/good/good morning/g' test.txt 相称good并替换到goodmorning send 's/good/& hello /p' test.txt 相配到good就在其背后加上hello send 's/good/ hello &/p' test.txt 相配到good就在其眼下加上hello
六.集结与区划(sort,uniq,join,cut,paste,split)
(1)sot命令 sort [options] files 好多不一样的域按分化的列顺序排序 -c 测量试验文件是还是不是曾经排序 -m 合併多少个排序文件 -u 删除全数同一行 -o 存款和储蓄sort结果的出口文件名 -t 域分隔符,用非空格或tab先导排序 +n :n 为列号,使用此列号开端排序 -n 钦定排序是域上的数字分类项 -r 相比较求逆 sort -c test.txt 测验文件是还是不是分类过 sort -u test.txt 排序并统一一样的行 sort -r test.txt 以相反的顺序排列 sort -t "/" +2 test.txt 以"/"分隔,第贰个域开首分类
(2)uniq命令 uniq [options ] files 从二个文件文件中除去或禁止重复行 -u 只体现不另行行 -d 只呈现成双重数据行,种种重复行只展现在这之中一行 -c 打字与印刷每一重复行出现次数 -f :n为数字,前n个域被忽视 uniq -f 2 test.txt 忽略前2个域
(3)join 命令 join [options] file1 file2 用来现在自八个分类文本文件的行连在一块 -an,n为一数字,用于连接时从文件n中显示不相称行 -onm ,连接域,n为文件号,m为域号 -jnm,n为文件号,m为域号,使用其余域作连接域 -t ,域分隔符。用来设置非空格或tab键的域分隔符。
(4)split命令 split -output_file_size intput_filename output_filename 用来将大文件分割成小文件。 -b n,各类分割文件的尺寸n -C n,各个分割文件一行最多n字节 -l n,每种分割文件的行数 -n,同-l n split -10 test.txt 将test.txt分割成10行的小文件
(5)cut 命令 cut -c n1-n2 filename 展现每行从初始算起 n1 到 n2 的文字。 cut -c 3-5 test.txt 突显test.txt中每行从第3到第5个字符

5.sed介绍

sed不与初阶化文件打交道,它操作的只是多个正片,然后全体的改换若无重定向到叁个文书,将出口到显示屏。
sed是一种很要紧的文件过滤工具,使用一行命令也许利用管道与grep与awk相结合。是一种非交互性文本流编辑。
(1)调用sed的几种办法
选用sed命令行格式为:sed [options] sed命令 输入文件
选取sed脚本文件格式为:sed[options] -f sed脚本文件 输入文件
sed脚本文件[options] 输入文件
–不管是使用shell命令行格局或脚本文件情势,若无一点点名输入文件,sed从专门的事业输入中接受输入,一般是键盘或重定向结果。
(2)sed 命令的options如下
-n:不打印
-c:下一下令是编写制定命令
-f:借使正在调用sed脚本文件
(3)sed在文书中询问文本的主意
–使用行号,能够是二个简练的数字,或是八个行号的界定
–使用正则表明式
(4)读取文本的方法
x x为一行号
x,y 表示行号范围从x到y
/pattern/ 查询满含形式的行
/pattern/pattern/ 查询包蕴七个情势的行
pattern/,x 在给定的行号上询问包蕴情势的行
x,/pattern/ 通过行号和情势查询相称行
x,y! 查询不包括内定行号x和y的行
(5)基本sed编辑命令
p 打字与印刷相称行
d 删除相称行
= 呈现文件行号
a 在一定行号后附加新文本音信
i 在一直行号后插入新文本音讯
c 用新文本替换定位文本
s 使用替换形式替换相应方式
r 从另三个文件中读文件
w 写文本到三个文本
q 第贰个情势相称实现后推出或及时退出
l 显示与八禁止ASCII代码等价的调整字符
{} 在一向行实践的命令组
n 从另二个文件中读文件下一行,并附加在下一行
g 将模式2粘贴到/pattern n/
y 传送字符
(6)比方表明:
sed -n ‘2p’ test.txt 打印第二行的消息(注意:-n是不打字与印刷不包容的音信,若没加-n,则打字与印刷文件的享有音信并不是合营新闻)
sed -n ‘1,4p’ test.txt 打字与印刷第一行到第四行的新闻
sed -n '/los/p' test.txt 方式相称los,并打字与印刷出来
sed -n ‘2,/los/p’ test.txt 从第二行开端。。知道相配第叁个los
sed -n ‘/^$/p’ test.txt 相称空行
sed -n -e '/^$/p' -e '/^$/=' test.txt 打字与印刷空行及行号
sed -n ‘/good/amorning’ test.txt 在协作到的good后边附加morning
sed -n ‘/good/imorning’ test.txt 在协作到的good前边插入morning
sed -n ‘/good/cmorning’ test.txt 将协作到的good替换到morning
sed ‘1,2d’ test.txt 删除第1和2行
sed ‘s/good/good morning/g’ test.txt 相称good并替换到goodmorning
send ‘s/good/& hello /p’ test.txt 相称到good就在其背后加上hello
send ‘s/good/ hello &/p’ test.txt 相称到good就在其眼下加上hello

6.合併与分割(sort,uniq,join,cut,paste,split)

(1)sot命令
sort [options] files 比较多不等的域按不一样的列顺序排序
-c 测验文件是还是不是业已排序
-m 合併几个排序文件
-u 删除全部同一行
澳门金莎娱乐网站 ,-o 存储sort结果的出口文件名
-t 域分隔符,用非空格或tab最初排序
+n :n 为列号,使用此列号初步排序
-n 内定排序是域上的数字分类项
-r 相比较求逆
sort -c test.txt 测量检验文件是还是不是分类过
sort -u test.txt 排序并统一同样的行
sort -r test.txt 以相反的顺序排列
sort -t “/” +2 test.txt 以”/”分隔,第4个域初阶分类 (2)uniq命令
uniq [options ] files 从三个文书文件中删去或取缔重复行
-u 只体现不重复行
-d 只展示成双重数据行,各个重复行只展现个中一行
-c 打字与印刷每一重复行出现次数
-f :n为数字,前n个域被忽略
uniq -f 2 test.txt 忽略前2个域
(3)join 命令
join [options] file1 file2 用来现在自七个分类文本文件的行连在一块
-an,n为一数字,用于连接时从文件n中显示不相配行
-onm ,连接域,n为文件号,m为域号
-jnm,n为文件号,m为域号,使用其余域作连接域
-t ,域分隔符。用来设置非空格或tab键的域分隔符。
(4)split命令
split -output_file_size intput_filename output_filename
用来将大文件分割成小文件。
-b n,各个分割文件的大小n
-C n,各类分割文件一行最多n字节
-l n,每一个分割文件的行数
-n,同-l n
split -10 test.txt 将test.txt分割成10行的小文件
(5)cut 命令
cut -c n1-n2 filename 显示每行从开始算起 n1 到 n2 的文字。

cut -c 3-5 test.txt 显示test.txt中每行从第3到第5个字符

 

 

命令为: *find . |xargs grep -ri bspSetPonTxDisable -l* 查找目录下的持有文件中是还是不是含有...

本文由澳门金莎娱乐网站发布于服务器,转载请注明出处:目录下检索字符串,linux查找目录下的所有文件中

关键词:

博文推荐,sed实战修改多行配置技巧

商城意况运行案例:sed实战修改多行布署技能 本博文出自Bkjia博客老男孩linux运行,有另外难点请步向博主页面互动探...

详细>>

如何建设有中国特色的IT运维管理平台之我见【澳

什么样建设有中中原人民共和国特点的IT运行管理平台之小编见 在促成好基础设备透明化处理的底子上,公司顾客供...

详细>>

基于ITIL的IT运维管理系统,基于ITIL的IT运维管

流程必得客商化,产品如何是好到吗?五个层面,第贰个层面尽管能够方便的在客商所急需的限量内开展分化版本流...

详细>>

不再是空中楼阁,BSM如何落地

北塔BTIM适用于各政府部门、企事业单位、科教文卫等各种IT运维系统,是定位于“系统平台”、“运行维护管理”的...

详细>>