linux head、tail、sed、cut、grep、find

head用法:

head 参数 文件名

-cn:显示前n个字节    -n:显示前n行

例子:head -c20 1.txt 显示1.txt文件中前20个字符

        ls |  head -20:显示前20个文件

   head -20 1.txt:显示前20行的内容

tail用法:

  tail -20 1.txt 显示1.txt文件最后20行的内容

  tail -f 1.txt  不停地去读1.txt中最新的内容

sed用法:

sed [-nefri] 'command' 输入文件

注意:在用sed进行一些命令操作时,原文件的内容并无变化,是因为未加-i参数的原因

常用选项:

  -i:直接修改读取的文档

  -n:只显示sed处理过的数据

     -f:把sed写在一个文件中,可直接通过sed -f 文件名来执行

  -er这几个参数我也不是很明白,以后明白了再更新

命令:a:新增add;d:删除del;i:插入insert;p:打印出制定行内容跟print差不多,与-n搭配使用

   c:替换,c后面跟字符串,c前面跟行数,把制定行的内容替换成c后面的字符

         s:替换,sed 's/要替换的字符串/新的字符串/g'   (要替换的字符串可以用正则表达式)

用法:sed '1,4d' 1.txt 删除1.txt文件的第1行到第4行

    sed -n ‘1,3p’ 1.txt 显示出文件1到3行的数据

        sed  ‘1ani zui jing hai hao ma?’ 1.txt 向文件第1行后插入a后面的数据,也就是第二行显示出a后的数据

 cut用法

 cut主要是对文件的每行数据进行处理

cut [-b]/[-c]/[-bn]/[-df] [file]

参数说明:

b:byte以字节分割;c:char以字符分割;-d :自定义分隔符,默认为制表符。-f  :与-d一起使用,指定显示哪个区域。

-n:取消多个分割多个字节的字符,例如:用-b去获取中文字符,会吧一个汉字拆成多个会导致乱码,此时就可用-n来屏蔽此问题

下面的例子是把文件中内容通过:分割成两部分,获取:后的部分

grep用法:

grep 【-cinvs】‘patten’ 文件

  1. 匹配模式选择:  
  2.  -E, --extended-regexp     扩展正则表达式egrep  
  3.  -F, --fixed-strings       一个换行符分隔的字符串的集合fgrep  
  4.  -G, --basic-regexp        基本正则  
  5.  -P, --perl-regexp         调用的perl正则  
  6.  -e, --regexp=PATTERN      后面根正则模式,默认无  
  7.  -f, --file=FILE           从文件中获得匹配模式  
  8.  -i, --ignore-case         不区分大小写  
  9.  -w, --word-regexp         匹配整个单词  
  10.  -x, --line-regexp         匹配整行  
  11.  -z, --null-data           a data line ends in 0 byte, not newline  
  12.   
  13. 杂项:  
  14.  -s, --no-messages         不显示错误信息  
  15.  -v, --invert-match        显示不匹配的行  
  16.  -V, --version             显示版本号  
  17.  --help                    显示帮助信息  
  18.  --mmap                use memory-mapped input if possible  

find

原文地址:https://www.cnblogs.com/xianhaiyan/p/6164920.html