Linux 三剑客之sed


命令补充:

sort命令

对文本文件的内容,以行为单位来排序,比较原则是从一行的首个字符依次向后,按照字符对应的ASCII码值进行比较,默认升序

  • 格式:sort [参数] [-o 输出文件]

  • 参数:

    • -b: 不包括开头的空白字符,从第一个可见字符比较
    • -n:按照数值的大小排序
    • -r:以相反的顺序来排序
    • -k:以某列进行排序
    • -t<分隔字符> : 指定排序时所用的栏位分隔字符
    • -o<输出文件> : 将排序后的结果存入指定的文件
    • -k: 选择以哪个列进行排序
    • -f: 排序时,忽略大小写字母
    • -u:排序过程中去除重复的行
  • 实例如下:

# 常用参数演示,文件内容自己编写

# 排序
[root@localhost ~]# cat 1.sh
aa
ab
ac
ad
[root@localhost ~]# sort 1.sh
aa
ab
ac
ad # -n按照数值大小排序
[root@localhost ~]# sort -n 1.sh
1aa
22ab
32ac
42ad # -r 以相反的顺序来排序,降序输出
[root@localhost ~]# sort -r 1.sh
aaa
4ad
32ac
22ab
1aa
1 # 按第一列排序
[root@localhost ~]# sort -k1 1.sh
1
1aa
22ab
32ac
4ad
aaa # -t:指定分割符,默认是以空格为分隔符
# 注:分隔符排序前有空格行
[root@localhost ~]# cat 3.sh
|1|2|3|5|6|2|1|3|7|8
|3|4|4|5|4|6|7|8|9|8
|2|3|4|5|4|6|5|7
|3|4|6|8|9|0|7|0|7
|3|2|4|2|4|2|4|2|3|4
[root@localhost ~]# sort -n -r -k2 -t '|' 3.sh
|3|4|6|8|9|0|7|0|7
|3|4|4|5|4|6|7|8|9|8
|3|2|4|2|4|2|4|2|3|4
|2|3|4|5|4|6|5|7
|1|2|3|5|6|2|1|3|7|8 # `-u`:排序过程中去除重复的行
[root@localhost ~]# cat 4.sh
aaaaaa
aaaaaa
bbbbbb
bbbbbb
cccccc
cccccc
[root@localhost ~]# sort -u 4.sh
aaaaaa
bbbbbb
cccccc # -o<输出文件> : 将排序后的结果存入指定的文件
[root@localhost ~]# sort -u 4.sh > 5.sh
[root@localhost ~]# cat 5.sh
aaaaaa
bbbbbb
cccccc

uniq命令

用于检查及删除文本文件中重复出现的行列,一般与 sort 命令结合使用

  • 格式:uniq [参数] [文件]

  • 参数:

    • -c: 在输出行前面加上每行在输入文件中出现的次数
    • -d:仅显示重复出现的行列
    • -u:仅显示不重复行列
  • 实例如下:

# 去重
[root@localhost ~]# cat 4.sh
aaaaaa
aaaaaa
bbbbbb
bbbbbb
cccccc
cccccc
[root@localhost ~]# uniq 4.sh
aaaaaa
bbbbbb
cccccc # 注意,去重是相邻重复内容去重,所以先排序再去重
[root@localhost ~]# cat 5.sh
123
124
123
123
123
124
124
124
125
126
[root@localhost ~]# uniq 5.sh
123
124
123
124
125
126
# 这样的话就没有达到去重的效果,需要搭配sort使用
[root@localhost ~]# sort -n 5.sh|uniq
123
124
125
126 # -c: 在输出行前面加上每行在输入文件中出现的次数
[root@localhost ~]# sort -n 5.sh|uniq -c
4 123
4 124
1 125
1 126 # -u:仅显示不重复行列
[root@localhost ~]# sort -n 5.sh|uniq -u
125
126

cut命令

cut命令用来输出每一行中的指定部分,删除(剪切)文件中指定字节,字段

  • 格式:cut [-b/c/f] [file]

  • 定位方法:

    • -b:字节
    • -c:字符
    • -f:域

    注.必须指定-b,-c,-f其中一种

  • 参数:

    • -b:以字节为单位进行分割。这些字节位置将忽略多字节字符边界,除非也指定了 -n 标志
    • -c:以字符为单位进行分割
    • -d:自定义分隔符,默认为制表符(Tab)
    • -f :与-d一起使用,指定显示哪个区域
    • -n:取消分割多字节字符。仅和 -b 标志一起使用。如果字符的最后一个字节落在由 -b 标志的 List 参数指示的<br />范围之内,该字符将被写出;否则,该字符将被排除。
  • 实例如下:

    -b字节(英文数字)模式如下

    # 用当前登录用户信息举例
    [root@localhost ~]# who
    root tty1 2021-12-21 18:47
    root pts/0 2021-12-21 16:52 (192.168.15.1) # -b 模式提取字节
    [root@localhost ~]# who | cut -b 3
    o
    o
    # 提取第1,2,3列的字节
    [root@localhost ~]# who | cut -b 1,2,3
    roo
    roo
    [root@localhost ~]# who | cut -b 1-3
    roo
    roo
    # cut命令如果使用了-b选项,那么执行此命令时,cut会先把-b后面所有的定位进行从小到大排序,然后再提取。不能颠倒定位的顺序。
    [root@localhost ~]# who | cut -b -3,3-
    root tty1 2021-12-21 18:47
    root pts/0 2021-12-21 16:52 (192.168.15.1)
    # -3表示从第一个字节到第三个字节,3-表示从第三个字节到行尾
    # 执行上述语句,第三个字节不会重叠输出

    -c模式字符(汉字可用)如下:

    [root@localhost ~]# cat a.txt
    路飞
    山治
    索隆
    娜美
    黑胡子
    白胡子
    # 如果用b模式就会不完全输出
    [root@localhost ~]# cut -b 2 a.txt
    ·
    ±
    ´
    ¨
    »
    # 用c模式,区别就看出来了
    [root@localhost ~]# cut -c 2 a.txt






    # -c则会以字符为单位,输出正常;而-b只会傻傻的以字节(8位二进制位)来计算,输出就是乱码。 # 使用-n搭配b模式使用,解决乱码
    [root@localhost ~]# cut -nb 2 a.txt






    -f模式,-b和-c只能在固定格式的文档中提取信息,而对于非固定格式的信息则束手无策,这时候使用-f模式,在使用的时候注意设置间隔符

    # 提取用户名
    [root@localhost ~]# head -n 5 /etc/passwd
    root:x:0:0:root:/root:/bin/bash
    bin:x:1:1:bin:/bin:/sbin/nologin
    daemon:x:2:2:daemon:/sbin:/sbin/nologin
    adm:x:3:4:adm:/var/adm:/sbin/nologin
    lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
    [root@localhost ~]# head -n 5 /etc/passwd | cut -d : -f 1
    root
    bin
    daemon
    adm
    lp

tr命令

用一个字符来替换另一个字符,或者可以完全删除一些字符,替换等

  • 格式: tr [OPTION]... SET1 [SET2]

  • 参数:

    • -c :用字符串1中字符集的补集替换此字符集,要求字符集为ASCII。
    • -d:删除指令字符
    • -s:缩减连续重复的字符成指定的单个字符
    • -t:削减 SET1 指定范围,使之与 SET2 设定长度相等
  • 实例如下:

    # 替换
    [root@localhost ~]# cat 2.sh
    +a+b+c+d
    +e+f+g
    +h+i+j+k
    +1+2+a+s+d+a+s
    +a+b+c+1+2+3
    # 将2.sh中的'+'替换成'|'
    [root@localhost ~]# cat 2.sh | tr + '|'
    |a|b|c|d
    |e|f|g
    |h|i|j|k
    |1|2|a|s|d|a|s
    |a|b|c|1|2|3
    # 将2.sh小写字母替换成大写字母
    [root@localhost ~]# cat 2.sh | tr a-z A-Z
    |A|B|C|D
    |E|F|G
    |H|I|J|K
    |1|2|A|S|D|A|S
    |A|B|C|1|2|3 # 删除
    # -d 删除2.sh中的ab字母
    [root@localhost ~]# cat 2.sh | tr -d "ab" > new_file
    [root@localhost ~]# cat new_file
    |||c|d
    |e|fffff|g
    |h|i|j|k
    |1|2||s|d||s
    |||c|1|2|3 # -s 删除连续的字符,相当于去重,只保留第一个
    [root@localhost ~]# cat 2.sh
    |aaaaaaaaa|bbbbbbb|c|d
    |e|fffff|bbbbbg
    |h|i|j|k
    |1|2|a|s|d|a|s
    |a|b|c|1|2|3
    [root@localhost ~]# cat 2.sh | tr -s [a-z] > new_file
    [root@localhost ~]# cat new_file
    |a|b|c|d
    |e|f|bg
    |h|i|j|k
    |1|2|a|s|d|a|s
    |a|b|c|1|2|3
    # -s还有替换的功能,将2.sh中的'|',替换成'-'
    [root@localhost ~]# cat 2.sh | tr -s "|" "-"
    -aaaaaaaaa-bbbbbbb-c-d
    -e-fffff-bbbbbg
    -h-i-j-k
    -1-2-a-s-d-a-s
    -a-b-c-1-2-3

wc命令

wc指令可以计算文件的字节数,词数,或者列数,若不指定文件名称、或是所给予的文件名为"-",则wc指令会从标准输入设备读取数据。

注:在Linux系统中,一段连续的数字或字母组合为一个词

在默认的情况下,wc将计算指定文件的行数、字数,以及字节数

  • 格式:wc [OPTION]... [FILE]...

  • 参数:

    • -c:统计文件的字节(Bytes)数
    • -l:统计文件的行数
    • -w:统计文件中的单词个数,默认以空白字符作为分隔符
  • 实例如下:

    # 统计bytes
    # 查看2.sh内容
    [root@localhost ~]# cat 2.sh
    |aaaaaaaaa|bbbbbbb|c|d
    |e|fffff|bbbbbg
    |h|i|j|k
    |1|2|a|s|d|a|s
    |a|b|c|1|2|3
    # 单文件
    [root@localhost ~]# wc 2.sh
    5 5 76 2.sh # 对应数字:行数,单词数,字节数
    [root@localhost ~]# wc -c 2.sh
    76 2.sh # bytes数
    [root@localhost ~]# wc -w 2.sh
    5 2.sh # 单词数
    [root@localhost ~]# wc -l 2.sh
    5 2.sh # 行数 # 多文件
    # 不加参数默认都输出
    [root@localhost ~]# wc 2.sh 3.sh 4.sh
    5 5 76 2.sh # 第一个5代表行数未5,单词数5,字节数76
    5 5 99 3.sh
    6 6 42 4.sh
    16 16 217 total [root@localhost ~]# cat 2.sh 3.sh 4.sh | wc
    16 16 217
    # 这样相当于将三个文件的行数,单词书,字节数求和输出
    # 加参数
    [root@localhost ~]# wc -c 2.sh 3.sh 4.sh
    76 2.sh # 文件字节总和
    99 3.sh
    42 4.sh
    217 total
    [root@localhost ~]# wc -l 2.sh 3.sh 4.sh
    5 2.sh # 文件行数总和
    5 3.sh
    6 4.sh
    16 total
    [root@localhost ~]# wc -w 2.sh 3.sh 4.sh
    5 2.sh # 文件单词数总和
    5 3.sh
    6 4.sh
    16 total
    # 上面的例子是多文件统计

三剑客 - sed

sed,三大剑客之一,sed是一款流媒体编辑器,用来对文本进行过滤,修改操作等

注:grep用来过滤文本,sed用来修改文本,awk用来处理文本

  • 格式:sed [参数] '处理规则' [操作对象]

  • 参数

    • -e:允许多个脚本被执行,多项编辑

    • -n:取消默认输出,就是静默输出

    • -i:就地编辑,直接修改源文件(慎用)

    • -r:使用拓展正则表达式(和egrep一样)

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

编辑模式:

  • d:删除模式
  • p:打印(P打印第一行)
  • a:在当前行后添加一行或多行
  • i:在当前行上一行插入文本(直接修改,原文内容 也会更改)
  • r:从文件中读取
  • w:将指定行写入文件
  • y:将字符转换成另一个字符
  • s:替换指定的字符(每一行只替换一次)
  • g:获得内存缓冲区的内容,并替代当前,相当于全部执行
  • i:忽略大小写(和s模式一起使用的时候,不是单独使用)
  • &:已经匹配字符串标记
  • 定位:(使用两个斜线)

定位分类:

  • 数字定位:sed ‘行号+模式’ file -- 指定行定位

    • sed '/^g/d' 2.sh
  • 正则定位:sed ‘正则+模式’ file -- 正则指定开头内容

    • sed '3,/^g/d' 2.sh
  • 数字和正则定位:sed ‘数字,正则+模式’ file -- 指定行,和开头

  •    sed '3,/^g/d' 2.sh
  • 正则和正则定位:sed ‘正则,正则+模式’ file -- 指定以g和k开头

  •    sed '/^g/,/^j/d' 2.sh
    
    
  • 处理规则可以使用正则,也可以使用-f指定文件

  • [正则个人总结](python 正则表达式 - HammerZe - 博客园 (cnblogs.com))

实例如下:

d模式——删除模式

# 删除
[root@localhost ~]# cat 2.sh
|aaaaaaaaa|bbbbbbb|c|d
|e|fffff|bbbbbg
|h|i|j|k
|1|2|a|s|d|a|s
|a|b|c|1|2|3
# 删除第二行
[root@localhost ~]# sed '2d' 2.sh
|aaaaaaaaa|bbbbbbb|c|d
|h|i|j|k
|1|2|a|s|d|a|s
|a|b|c|1|2|3
# 删除第一行和第二行
[root@localhost ~]# sed '1,2d' 2.sh
|h|i|j|k
|1|2|a|s|d|a|s
|a|b|c|1|2|3 # -e参数,多个脚本同时操作,删除1到2行,和五行
[root@localhost ~]# sed -e '1,2d' -e '5d' 2.sh
|h|i|j|k
|1|2|a|s|d|a|s # -n参数,静默
[root@localhost ~]# sed -n -e '1,2d' -e '5d' 2.sh
[root@localhost ~]# echo $?
0 # 0代表成功,非0代表相反 # -f参数,搭配文件使用
# 在r.sh 中编写正则:/b/d --删除带有b的行
[root@localhost ~]# sed -r '/b/d' 2.sh
|h|i|j|k
|1|2|a|s|d|a|s
[root@localhost ~]# sed -f r.txt 2.sh
|h|i|j|k
|1|2|a|s|d|a|s
# 这样两种结果是一样的

p模式——打印

# 查看2.sh
[root@localhost ~]# cat 2.sh
|aaaaaaaaa|bbbbbbb|c|d
|e|fffff|bbbbbg
|h|i|j|k
|1|2|a|s|d|a|s
|a|b|c|1|2|3
# 打印第一行
[root@localhost ~]# sed "1p" 2.sh
|aaaaaaaaa|bbbbbbb|c|d
|aaaaaaaaa|bbbbbbb|c|d
|e|fffff|bbbbbg
|h|i|j|k
|1|2|a|s|d|a|s
|a|b|c|1|2|3 # -n,静默输出
[root@localhost ~]# sed -n "1p" 2.sh
|aaaaaaaaa|bbbbbbb|c|d
# 这样就只打印p模式指定的那行 # -e ,多项操作
[root@localhost ~]# cat 2.sh
|aaaaaaaaa|bbbbbbb|c|d
|aaaaaaaaa|bbbbbbb|c|d
|aaaaaaaaa|bbbbbbb|c|d
|e|fffff|bbbbbg
|h|i|j|k
|1|2|a|s|d|a|s
|a|b|c|1|2|3
# 删除第一行,打印第五行
[root@localhost ~]# sed -e "1d" -e "5p" 2.sh
|aaaaaaaaa|bbbbbbb|c|d
|aaaaaaaaa|bbbbbbb|c|d
|e|fffff|bbbbbg
|h|i|j|k
|h|i|j|k
|1|2|a|s|d|a|s
|a|b|c|1|2|3 # -i,直接修改源文件,就地编辑
# 修改前
[root@localhost ~]# cat 2.sh
|aaaaaaaaa|bbbbbbb|c|d
|aaaaaaaaa|bbbbbbb|c|d
|aaaaaaaaa|bbbbbbb|c|d
|e|fffff|bbbbbg
|h|i|j|k
|1|2|a|s|d|a|s
|a|b|c|1|2|3
# 修改
[root@localhost ~]# sed -i "7p" 2.sh
# 修改后增加了一行
[root@localhost ~]# cat 2.sh
|aaaaaaaaa|bbbbbbb|c|d
|aaaaaaaaa|bbbbbbb|c|d
|aaaaaaaaa|bbbbbbb|c|d
|e|fffff|bbbbbg
|h|i|j|k
|1|2|a|s|d|a|s
|a|b|c|1|2|3
|a|b|c|1|2|3

a模式,在当前行后添加一行或多行

# 在第一行下添加xxxx
[root@localhost ~]# sed '1axxxxxxx' 2.sh
|aaaaaaaaa|bbbbbbb|c|d
xxxxxxx
|aaaaaaaaa|bbbbbbb|c|d
|aaaaaaaaa|bbbbbbb|c|d
|e|fffff|bbbbbg
|h|i|j|k
|1|2|a|s|d|a|s
|a|b|c|1|2|3
|a|b|c|1|2|3

i模式,在指定行前一行插入

[root@localhost ~]# sed '7i马叉虫' 2.sh
|aaaaaaaaa|bbbbbbb|c|d
|aaaaaaaaa|bbbbbbb|c|d
|aaaaaaaaa|bbbbbbb|c|d
|e|fffff|bbbbbg
|h|i|j|k
|1|2|a|s|d|a|s
马叉虫
|a|b|c|1|2|3
|a|b|c|1|2|3

c模式,替换当前行

[root@localhost ~]# cat 2.sh
|aaaaaaaaa|bbbbbbb|c|d
|aaaaaaaaa|bbbbbbb|c|d
|aaaaaaaaa|bbbbbbb|c|d
|e|fffff|bbbbbg
|h|i|j|k
|1|2|a|s|d|a|s
|a|b|c|1|2|3
|a|b|c|1|2|3
# 替换第一行
[root@localhost ~]# sed '1cxxxxxxx' 2.sh
xxxxxxx
|aaaaaaaaa|bbbbbbb|c|d
|aaaaaaaaa|bbbbbbb|c|d
|e|fffff|bbbbbg
|h|i|j|k
|1|2|a|s|d|a|s
|a|b|c|1|2|3
|a|b|c|1|2|3

r模式,在文件中读内容

 [root@localhost ~]# cat 3.sh
|1|2|3|5|6|2|1|3|7|8
|3|4|4|5|4|6|7|8|9|8
|2|3|4|5|4|6|5|7
|3|4|6|8|9|0|7|0|7
|3|2|4|2|4|2|4|2|3|4 # 在3.sh中读取2.sh
[root@localhost ~]# sed '5r 2.sh' 3.sh
|1|2|3|5|6|2|1|3|7|8
|3|4|4|5|4|6|7|8|9|8
|2|3|4|5|4|6|5|7
|3|4|6|8|9|0|7|0|7
|3|2|4|2|4|2|4|2|3|4
|aaaaaaaaa|bbbbbbb|c|d
|aaaaaaaaa|bbbbbbb|c|d
|aaaaaaaaa|bbbbbbb|c|d
|e|fffff|bbbbbg
|h|i|j|k
|1|2|a|s|d|a|s
|a|b|c|1|2|3
|a|b|c|1|2|3

w模式,将指定行写入文件

# 把第一行到第七行写入到input文件中
[root@localhost ~]# sed '1,7w input.txt' 2.sh
|aaaaaaaaa|bbbbbbb|c|d
|aaaaaaaaa|bbbbbbb|c|d
|aaaaaaaaa|bbbbbbb|c|d
|e|fffff|bbbbbg
|h|i|j|k
|1|2|a|s|d|a|s
|a|b|c|1|2|3
|a|b|c|1|2|3
[root@localhost ~]# cat input.txt
|aaaaaaaaa|bbbbbbb|c|d
|aaaaaaaaa|bbbbbbb|c|d
|aaaaaaaaa|bbbbbbb|c|d
|e|fffff|bbbbbg
|h|i|j|k
|1|2|a|s|d|a|s
|a|b|c|1|2|3

y模式,将字符替换成另外一个

# 将第一行到第三行的a替换成A,有a就替换
[root@localhost ~]# sed '1,3y/a/A/' 2.sh
|AAAAAAAAA|bbbbbbb|c|d
|AAAAAAAAA|bbbbbbb|c|d
|AAAAAAAAA|bbbbbbb|c|d
|e|fffff|bbbbbg
|h|i|j|k
|1|2|a|s|d|a|s
|a|b|c|1|2|3
|a|b|c|1|2|3

s模式,字符串转换

# 将字符串转换成另一个字符串(每一行只替换一次)
[root@localhost ~]# sed 's/a/啊/' 2.sh
|啊aaaaaaaa|bbbbbbb|c|d
|啊aaaaaaaa|bbbbbbb|c|d
|啊aaaaaaaa|bbbbbbb|c|d
|e|fffff|bbbbbg
|h|i|j|k
|1|2|啊|s|d|a|s
|啊|b|c|1|2|3
|啊|b|c|1|2|3

g模式,全部执行

# 全部替换
[root@localhost ~]# sed 's/a/啊/g' 2.sh
|啊啊啊啊啊啊啊啊啊|bbbbbbb|c|d
|啊啊啊啊啊啊啊啊啊|bbbbbbb|c|d
|啊啊啊啊啊啊啊啊啊|bbbbbbb|c|d
|e|fffff|bbbbbg
|h|i|j|k
|1|2|啊|s|d|啊|s
|啊|b|c|1|2|3
|啊|b|c|1|2|3

i模式,忽略大小写

# 和s模式一起使用
[root@localhost ~]# cat 2.sh
|AAAAAAAAA|bbbbbbb|c|d
|AAAAAAAAA|bbbbbbb|c|d
|AAAAAAAAA|bbbbbbb|c|d
|e|fffff|bbbbbg
|h|i|j|k
|1|2|a|s|d|a|s
|a|b|c|1|2|3
|a|b|c|1|2|3
# 忽略大小写
[root@localhost ~]# sed 's/a/啊/gi' 2.sh
|啊啊啊啊啊啊啊啊啊|bbbbbbb|c|d
|啊啊啊啊啊啊啊啊啊|bbbbbbb|c|d
|啊啊啊啊啊啊啊啊啊|bbbbbbb|c|d
|e|fffff|bbbbbg
|h|i|j|k
|1|2|啊|s|d|啊|s
|啊|b|c|1|2|3
|啊|b|c|1|2|3

&的使用

将nginx.conf中每一行之前增加注释
[root@localhost ~]# sed 's/.*/#&/g' /etc/nginx/nginx.conf

练习:

# 将nginx.conf中的注释行全部去掉
sed '/^ *#/d' /etc/nginx/nginx.conf # 将nginx.conf中每一行之前增加注释
sed 's/.*/#&/g' /etc/nginx/nginx.conf # 一键修改本机的ip
# 要求如下:
# 192.168.15.100 ---> 192.168.15.101
# 172.16.1.100 ---> 172.16.1.101
sed -i 's/.100/.101/g' /etc/sysconfig/network-scripts/ifcfg-eth[01] # 将/etc/passwd中的root修改成ROOT
sed -i 's/root/ROOT/g' /etc/passwd

[cut命令参考博文]((38条消息) Linux字符截取命令-cut_小工匠-CSDN博客_cut命令)

[tr命令参考](Linux tr命令 | 菜鸟教程 (runoob.com))


Linux 三剑客之sed的更多相关文章

  1. Linux实战教学笔记12:linux三剑客之sed命令精讲

    第十二节 linux三剑客之sed命令精讲 标签(空格分隔): Linux实战教学笔记-陈思齐 ---更多资料点我查看 1,前言 我们都知道,在Linux中一切皆文件,比如配置文件,日志文件,启动文件 ...

  2. (转)不看绝对后悔的Linux三剑客之sed实战精讲

    不看绝对后悔的Linux三剑客之sed实战精讲 原文:http://blog.51cto.com/hujiangtao/1923718 二.Linux三剑客之sed命令精讲 1,前言 我们都知道,在L ...

  3. day14 linux三剑客之sed命令

    day14 linux三剑客之sed命令 sed命令 Sed 主要用来自动编辑一个或多个文件.简化对文件的反复操作.编写转换程序等. sed(流式编辑器) : sed主要用来修改文件. 1.sed命令 ...

  4. Linux 三剑客 -- awk sed grep

    本文由本人收集整理自互联网供自己与网友参考,参考文章均已列出,如有侵权,请告知! 顶配awk,中配sed,标配grep awk 参考 sed 参考 grep 参考 在线查看linux命令速记表 app ...

  5. Linux三剑客grep/sed/awk

    grep/sed/awk被称为linux的“三剑客” grep更适合单纯的查找或匹配文本: sed更适合编辑匹配到的文本: awk更适合格式化文本,对文本进行较复杂各式处理: Grep --color ...

  6. linux三剑客之sed命令

    一.前言 我们都知道,在Linux中一切皆文件,比如配置文件,日志文件,启动文件等等.如果我们相对这些文件进行一些编辑查询等操作时,我们可能会想到一些vi,vim,cat,more等命令.但是这些命令 ...

  7. linux三剑客之sed深度实践

    参数: -a:追加文本到指定行后 -i:插入文本到指定行前 1.单行增加 [root@redhat~]#   sed  ' 2a  6,f '  linux.tet 1,a 2,b 6,f 3,c 4 ...

  8. 【linux三剑客】sed命令

    sed - stream editor for filtering and transforming text sed 流编辑器 strem edition,实现对文件的增删改替换查是Linux中第二 ...

  9. Linux三剑客之sed

    sed sed对文本的处理很强大,并且sed非常小,参数少,容易掌握,他的操作方式根awk有点像.sed按顺序逐行读取文件.然后,它执行为该行指定的所有操作,并在完成请求的修改之后的内容显示出来,也可 ...

随机推荐

  1. restTemplate的问题-feign的项目

    restTemplate的问题  1.场景描述 在使用feign的项目中,偶然的使用到了restTemplate 在普通方法调用是可以访问的,一旦使用了restTemplate,出现报错 比如: 百度 ...

  2. banner.txt

    Spring Boot Version: ${spring-boot.version} __----~~~~~~~~~~~------___ . . ~~//====...... __--~ ~~ - ...

  3. javascript-初级-day07

    day01-运算符 <!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type&quo ...

  4. Date相关类

    Date相关类 SimpleDateFormat类中format()和parse()方法 parse 字符串 --> 日期 format 日期 --> 字符串 Date类中getTime( ...

  5. IDEA 2021.2.3 安装与破解教程

    首先说明,大部分情况下,花10块钱都可以在淘宝找人直接帮你完美解决这个资源问题 所以千万不要相信一些所谓的百度结果,一般都是花费了时间却最后无法解决破解的问题 我相信任何一个想要学习软件开发的人一定要 ...

  6. 【豆科基因组】绿豆Mungbean, Vigna radiata基因组2014NC

    目录 来源 一.简介 二.结果 基因组组装 重复序列和转座子 基因组特征和基因注释 绿豆的驯化 豆科基因组复制历史 基于转录组分析的豇豆属形成 绿豆育种基因组资源 三.讨论 四.方法 材料 组装 SN ...

  7. [linux] 常用命令及参数-2

    sort 1 sort是把结果输出到标准输出,因此需要输出重定向将结果写入文件 2 sort seq.txt > file.txt 3 sort -u seq.txt 输出去重重复后的行 4 s ...

  8. C语言 指针数组指针

    指向指针数组的指针. 1 #include <stdio.h> 2 3 int main(void) 4 { 5 char *pa[4]={"aaaaa"," ...

  9. js浮点运算的坑

    1,js浮点型小数点运算的问题. 这么简单的计算,js竟然算的是错的,究其原因,是因为js小数在内存存储方式的原因. 具体原因: JavaScript 里的数字是采用 IEEE 754 标准的 64 ...

  10. Spring Cloud 2021.0.0 正式发布,第一个支持Spring Boot 2.6的版本!

    美国时间12月2日,Spring Cloud 正式发布了第一个支持 Spring Boot 2.6 的版本,版本号为:2021.0.0,codename 为 Jubilee. 在了解具体更新内容之前, ...