linux sort uniq cut sed

sort:排序

  -n 正常顺序:1,2,3,11,12,21

  -r 倒序

  -k n 按第n列排序

  -t 指定分割符,默认为空格

 

uniq:去重(仅相邻的项去重)

  -c 显示该行重复出现的次数

  -d 仅显示重复出现的行列

  -u 仅显示出现一次的行列

 

cut:显示或删除行中指定的部分

  -d 指定分割符,默认为tab

  -f  显示指定字段的内容

 

tr:替换或删除

  tr 123 678:1换成6 2换成8,一个一个的替换,而不是整体替换

  -d 删除

wc:统计数字

  -c 统计bytes数

  -l 行数

  -w 单词个数,默认以空格分割

 

sed 

  -n 取消默认输出

  -e 多项编辑: sed -e '3d' -e '6d'

  -i 在文件中执行

  -r 支持拓展正则

  -f 指定sed匹配规则脚本文件

  定位:

    1、数字定位法

      sed '3d' a.txt

    2、正则定位

      sed '/^g/d' a.txt  删除以g开头的行

    3、数字和正则定位

      sed '4,/^g/d‘ a.txt 从第4行到以g开头的行

    4、正则正则定位(多正则)

      sed '/^g/,/^j/d' a.txt  从以g开头的行,到以j开头的行

  编辑模式:

    d  删除

    p  打印

    a  在当前行后添加一行或多行

    c  用新文本修改(替换)当前行

      sed '2cxxx' a.txt 用xxx替换第2行

    i  在当前行之前,插入一行

      sed '2ixxx' a.txt 在第2行之前插入一行xxx

    r  把文件中的内容 插入到指定位置

      sed '2r b.txt' a.txt  把b.txt中的内容插入到第2行

    w  把指定行的内容写入到指定文件

      sed '2w b.txt' a.txt 把a.txt的第2 行内容写入到b.txt中

    y  将字符替换成另一个字符(两个相邻的字符不作为一个整体)

      sed '2y/fa/FA/' a.txt 把f换成F,a换成A,fa和FA都不是一个整体

    s  替换

      sed 's/11/22/g' a.txt 把11全部替换成22,去掉g每行只替换一次

      i 与s配合使用时忽略大小写

    &  前面匹配到的内容

 

上一篇:切分定理 评估函数


下一篇:Shell再次体检-工具使用