美文网首页
day15 课后笔记

day15 课后笔记

作者: 藏鋒1013 | 来源:发表于2019-03-22 16:17 被阅读0次

sed:

环境:

[root@oldboyedu ~/test]# cat oldgirl.txt

I am oldboy teacher!

I like badminton ball ,billiard ball and chinese chess!

our site is http://www.oldboyedu.com

my qq num is 49000448.

问题1:输出oldboy.txt的第2-3行内容※。

方法一:sed -n '2,3p' test.txt

方法二:head -3 test.txt|tail -2

问题2:过滤出含有oldboy字符串的行※。

方法一:sed -n '/oldboy/' test.txt

方法二:grep oldboy test.txt

问题3:删除含有oldboy字符串的行※。

方法一:sed '/oldboy/d' test.txt

方法二:grep -v 'oldboy' test.txt

问题4:将文件中的oldboy字符串全部替换为oldgirl※。

方法一:sed 's#oldboy#oldgirl#g' test.txt

方法二:Vim替换

问题5:将文件中的oldboy字符串全部替换为oldgirl,同时将QQ号码49000448改为31333741。

sed -e 's#oldboy#oldgirl#g' -e 's#49000448#31333741#g'

问题6:在oldboy.txt文件的第2行后追加文本。

方法一:sed '2a I am study.' test.txt

方法二:sed -i '2a I am study' test.txt

方法三:sed '2i I am study' test.txt

问题7:在oldboy.txt文件的第2行插入文本。

取出Linux中执行ifconfig eth0后对应的IP地址(只能输出IP地址)。

方法一:ifconfig etho|sed -n 2p|sed 's#^.*inet ##g'|sed 's#netm.*$##g'

方法二:ifconfig eth0|sed -n 2p|sed -e 'sg#^.*inet ##' -e 's#netm.*$##g'

方法三:ifconfog eth0|sed -ne 's#^.*ient ##g' -e 's#  netm.*$##gp'

方法四:ifconfig eth0|sed -nr '2s#^.*inet (.*)  netm.*$#\1#gp'

ip add的输出取出IP。

方法一:ip add|sed -nr 's#^.*inet (.*)\/24#\1#gp'

三剑客特长:

grep 过滤查找内容。筛子

sed  取行,替换,删除,追加

awk  取列

cut 按列切割

-d 指定分隔符

-f指定哪列,多列用逗号

awk语法:

awk  [option]  'pattern{action}' file ...

awk  [参数]      '条件{动作}'    文件 ...

参数:

-F 指定分隔符

列:$1第一列 $2第二列 以此类推....

$0  整行

$NF 最后一列 倒数第一列

$(NF-1) 倒数第二列

问题1:取test.txt文件的第2行到第3行的内容。

sed -n '2,3p' oldgirl.txt

问题2:过滤出含有root字符串的行※。

sed -n '/root/p' test.txt

grep oldboy oldgirl.txt

问题3:删除含有root字符串的行※。

sed '/root/d' oldgirl.txt

问题4:取文件的第一列、第三列和最后一列内容,并打印行号※。

sed 'sg'

问题5:取出Linux中执行ifconfig eth0后对应的IP地址(只能输出IP地址)。

问题6:过滤文件中第一列内容匹配root的字符串,把符合的行的最后一列输出

问题7:过滤下列test1.txt文件中第三列内容分数大于70,并且小于95的人名和性别。

相关文章

网友评论

      本文标题:day15 课后笔记

      本文链接:https://www.haomeiwen.com/subject/mdenmqtx.html