博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
小白的python之路11/14
阅读量:4658 次
发布时间:2019-06-09

本文共 2580 字,大约阅读时间需要 8 分钟。

视频69  固定命令的方式

1    vim /etc/profile2    vim /etc/bashrc3    vim /root/.bashrc4    vim /root/.bash_profile5    cd /etc/profile.d   vim a.sh  1-4以上都写入echo' /etc/profile'5    写入echo'/etc/profile.d/a.sh'   chmod +x a.sh

可以看见顺序是 1 5 3 4 2

 

 70  正则表达式

grep过滤

 

-n  :显示行号

-o  :只显示匹配的内容
-q  :静默模式,没有任何输出,得用$?来判断执行成功没有,即有没有过滤到想要的内容

-l  :如果匹配成功,则只将文件名打印出来,失败则不打印,通常-rl一起用,grep -rl 'root' /etc 

-A  :如果匹配成功,则将匹配行及其后n行一起打印出来
-B  :如果匹配成功,则将匹配行及其前n行一起打印出来
-C  :如果匹配成功,则将匹配行及其前后n行一起打印出来
--color
-c  :如果匹配成功,则将匹配到的行数打印出来
-E  :等于egrep,扩展
-i  :忽略大小写

-v  :取反,不匹配

-w:匹配单词

^以……开头  $以……结尾

. 点 是任意字符 eg:grep '^b.n' 开头为b中间任意字符第三个字符是n的

*前面n个下图是eg  *是0到无穷个  +是1到无数个

 

 

 

 

sed流式编辑器

语法

sed [options] 'command' in_file[s]
options 部分
-n
-e
-i
-f

 

 

 

 

 

 

 

 

 

 d表示删除 第一个是一到三行  第二个是一和三行

 

 

正则定位

 

 

 

 

 

 74

 

 

 删第一部分

 

 

 

删后面部分

 

 

 

 

1 3 部分互换

 

 

Sed作业:以/etc/passwd文件为模板1,删除文件每行的第一个字符。2,删除文件每行的第二个字符。3,删除文件每行的最后一个字符。4,删除文件每行的倒数第二个字符。5,删除文件每行的第二个单词。6,删除文件每行的倒数第二个单词。7,删除文件每行的最后一个单词。8,交换每行的第一个字符和第二个字符。9,交换每行的第一个字符和第二个单词。10,交换每行的第一个单词和最后一个单词。11,删除一个文件中所有的数字。12,删除每行开头的所有空格。13,用制表符替换文件中出现的所有空格。14,把所有大写字母用括号()括起来。15,打印每行3次。16,隔行删除。17,把文件从第2行到第5行复制到第7行后面。(选做题)18,把文件从第2行到第5行移动到第7行后面。(选做题)19,只显示每行的第一个单词。20,打印每行的第一个单词和第三个单词。21,将格式为    mm/yy/dd    的日期格式换成   mm;yy;dd22, a.txt内容    ABC    DEF    XYZ    通过SED实现tac命令    tac a.txt    XYZ    DEF    ABC1. sed -r 's/^(.)(.*)/\2/' /etc/passwd2. sed -r 's/^(.)(.)(.*)/\1\3/' /etc/passwd3. sed -r 's/(.*)(.)$/\1/' /etc/passwd4. sed -r 's/(.*)(.)(.)$/\1\3/' /etc/passwd5. sed -r 's/^([a-Z]+)([^a-Z]+)([a-Z]+)([^a-Z]+)/\1\2\4/' /etc/passwd6. sed -r 's/([^a-Z]+)([a-Z]+)([^a-Z]+)([a-Z]+)$/\1\3\4/' /etc/passwd7. sed -r 's/([^a-Z]+)([a-Z]+)([^a-Z]+)([a-Z]+)$/\1\2\3/' /etc/passwd8. sed -r 's/^(.)(.*)(.)$/\3\2\1/' /etc/passwd9. sed -r 's/^(.)([a-Z]+)([^a-Z]+)([a-Z]+)([^a-Z]+)/\4\2\3\1\5/' /etc/passwd10. sed -r 's/^([a-Z]+)([^a-Z]+)(.*)([^a-Z]+)([a-Z]+)$/\5\2\3\4\1/' /etc/passwd11. sed -r 's/[0-9]//g' /etc/passwd12. sed -r 's/^ *//g' /etc/passwd13. sed -r 's/ /\t/g' /etc/passwd14. sed -r 's/[A-Z]/(&)/g' /etc/passwd15. sed 'p;p' /etc/passwd16. sed '1~2d' /etc/passwd选做题17-18:文件内容[root@MiWiFi-R3-srv ~]# cat test 22222222224444444444666666666688888888888817.sed '2h;3,5H;7G' test 18. sed '2h;3,5H;2,5d;7G' test 19. sed -r 's/^([a-Z]+)([^a-Z]+)(.*)/\1/' /etc/passwd20. sed -r 's/^([a-Z]+)([^a-Z]+)([a-Z]+)([^a-Z]+)([a-Z]+)([^a-Z]+)/\5\2\3\4\1\6/' /etc/passwd21. 22. sed -r '{1h;1d;2G;2h;2d;3G;3h}'23. echo "2012/12/11" |sed -r 's/\//:/g'echo "2012/12/11" |sed -r 's#\/#:#g'echo "2012/12/11" |sed -r 's@\/@:@g'sed作业

 

 

 

 

 

 

 

 

 

  林海峰老师博客关于今天的内容:http://www.cnblogs.com/linhaifeng/p/6596660.html

转载于:https://www.cnblogs.com/yushengqingzhijiaoshang/p/7831620.html

你可能感兴趣的文章
Linux的学习:
查看>>
JavaScript中的原型继承原理
查看>>
Python logger模块
查看>>
jquery控制css的display(控制元素的显示与隐藏)
查看>>
关于python做人工智能的一个网页(很牛逼)
查看>>
判断控件的CGRect是否重合,获取控件的最大XY值
查看>>
GET请求在Tomcat中的传递及URI传递
查看>>
P4878 道路修建-美国
查看>>
dp练习
查看>>
[javascript]9宫格拖拽拼图游戏 puzzle
查看>>
Entity Framework底层操作封装(3)
查看>>
InputStream 转换 InputStreamReader再转换BufferedReader
查看>>
在线程池中的使用spring aop事务增强
查看>>
javascript相关知识
查看>>
数组对象去重
查看>>
Java内部类详解
查看>>
初识Twisted(一)
查看>>
linux 软件安装篇
查看>>
Sql server数据库大小写敏感设置
查看>>
JAVA多线程-内存模型、三大特性、线程池
查看>>