当前位置: 首页 > news >正文

网站 设置特殊的字体上海企业营销策划

网站 设置特殊的字体,上海企业营销策划,玩具网站 下载,外贸网站建设加推广shell的内容也挺多的,虽然云原生课程主要是讲grep、sed、awk三剑客,但是还有结合循环结构,判断语句,以及函数等内容。还是有点复杂的,并且我对shell的掌握并不多,所以写的可能并不全。当然,如果…

shell的内容也挺多的,虽然云原生课程主要是讲grep、sed、awk三剑客,但是还有结合循环结构,判断语句,以及函数等内容。还是有点复杂的,并且我对shell的掌握并不多,所以写的可能并不全。当然,如果后面遇到了新内容,这个shell系列还是会持续更新的。

本来是打算云原生暑期培训就完结这个云原生俱乐部专栏的,但是现在看来,里面的知识点也很庞大,或许以后还会有新的内容需要添加或者补充。当然,我并不能预测,所以能写多少算多少。不过我的更新速度还是很快的,每天都能写几千字。


这一篇的主要内容是三剑客,最后会做一个补充内容,也就是讲一讲shell中的变量、数组和函数。反正如果要用linux的话,是离不开这三剑客的,因为功能强大且好用,能够省很多事,至于脚本的话,那更不用说了。

grep命令总结

  1. -v反向查找(verbose)
2. -i不区分大小写(默认区分)
3. -n查看并显示行号
4. -w精确匹配模式,而不是包含
5. -l显示文件中包含模式的文件名(不显示具体内容)
6. -r递归查找目录下的文件有该模式的行
7. -c查看有多少匹配的项(相当于wc -l)
8. ^$表示空行
9. a|b属于查找两个中的一个,其实相当于[ab],但属于扩展正则。(但是对于ab|bc这种,使用[]就无法做到了)
10. ()表示分组,后面可以加匹配次数,如:?匹配1次或0次,+匹配1到多次,*匹配0到多次,{1,4}精确匹配1到4次,{1,}匹配1次到无数次。
11. -q表示静默模式,不在标准输出显示,但是可以通过状态码来查看执行情况,使用$?。
12. ||表示前者失败后者才运行,&&表示前者成功后者才运行,使用;则不管成不成功都运行。
13. echo -e表示使用转义字符(如\n),否则不使用。

sed命令总结

1. s命令表示替换
2. a命令表示追加
3. c命令表示替换(整行)
4. i命令表示插入
5. d表示删除
6. p表示打印行
7. 直接用数字6表示第六行,如6d
8. 6,9其中表示6到9行,如6,9d
9. /laste/,9(d,s)表示从匹配的到laste行到第九行
10. 用数字表示范围可以直接跟命令,但是用模式需要用分隔符
11. g表示全部范围
12. i表示不缺分大小写(注意i和g这两个选项都只能用于s)
13.n表示匹配的第几个才执行,与g相对(但同样,只能作为末尾给s使用) 

awk命令总结

1. 都使用单引号,因为有$0等awk命令的特殊符号。
2. awk默认使用扩展正则表达式
3. $0表示整行,$1表示第一列,然后awk会每行每行匹配
4. 使用$2,$4表示的是第二列和第四列,不是连续的。
5. 使用OFS作为输出字段分隔符,默认是空格。
6. NF表示行的列数,每行每行匹配,使用$NF表示取最后一列
7. NR则记录行号,从1开始计数,并且是全局行号,跨文件累增
8. 使用print动作,结果是每行每行输出
9. 可以使用-F ","指定输入分隔符(其实也可以不用引号引起来,但是使用集合的话要用引号),默认也是空格,并且支持使用[]匹配多个分隔符。
10. 可以在动作print之前使用模式匹配,'/pattern/ {print}',共同放在单引号内,
11.  ~表示匹配操作符,一般用于$n ~ 模式(正则表达式) 来匹配,命中的列则可以使用print打印。
12. 也可以使用NR>=或者NR<=或者NR==符号来匹配行号,然后可以使用&&表示与
13. $NF值同样适用,或者说是$n也一样,不建议使用$NR,因为这匹配的还是列而不是对应的行。
14. 使用比较符既可以比较数字,也可以匹配单词,如$3 == "Engineer"(注意这与~模式不太一样)。
15. 可以使用prinft来格式化输出,当然也可以用print配合OFS来控制输出分隔字符。
16. FS是输入分隔符,可以用-F来指定。
17. BEGIN表示在执行之前应用,可以不给awk设置输入文件。
18. {}默认是每行每行的执行,但是前面加上END,表示后面的则是只在输入处理完毕的时候执行一次
19. 可以使用if-else结构,也可以使用for循环结构,也可以使用while循环,可以省略结构的大括号,句子之间通过;相隔。

21. 注意if-else语句,可以用if{}else{},这样做中间不需要加分号隔开,除非if语句不使用{},这样需要用分号隔开。
22. 注意使用while循环的时候,需要将print count和count++放在一个语句块内,只用分号相隔不正确,必须用{}。 
23. next用于跳过当前行的处理,直接下一行,可以结合匹配来使用。(NR==FNR,处理第一个文件的时候为真,因为NR是跨文件的)
24. sort用于按字母排序,使用sort -n则是按数值排序;sort -nr则是按数值反向排序
25. uniq则是进行去重,由于它只会在相邻的进行去重,所以需要先排序,使用-c选项则是在去重结果中显示重复次数。

shell补充内容

本来想自己写写shel三剑客的内容的,但是看了看我之前的笔记,发现我要写的内容和它大差不差。而且这东西只靠记忆是不行的,关键在于运用,死记规则并没有什么用。

所以我把重点放在了这里介绍,主要是shell函数和变量。services=("mysql" "redis" "nginx")可用于声明数组,echo ${services[0]}则输出元素。echo ${services[@]} 用于输出所有元素:mysql redis nginx。

echo ${!services[@]} 用于输出索引:0 1 2 配合变量一起使用,一般将索引赋给变量,然后取索引值获取数组元素。local可用于声明本地变量,如果不用local的话则是全局变量。containers+=("${container_name:-$service}")用于给数组添加元素。

local arr=("$@")可以将函数的所有参数转化为数组,如果是$#,则也是所有的参数,但不会有空格间隔,$0则是脚本名。${var:-default}如果var未设置或为空,返回default,上面的例子就是用了。

${var:=default}如果var未设置或为空,设置var为default并返回;${var:?Error}如果var未设置,打印Error并退出。测试语句和算术语句的使用也很多,[[ -z "$str" ]]判断为空, [[ -n "$str" ]]判断非空。((count++))用于自增,(( )) 是 Bash 的算术运算复合命令​​,里面的变量可以不用加$取值。

http://www.dtcms.com/a/559833.html

相关文章:

  • 新手怎样做网站推广连云港权威网站优化服务
  • 营销网站建设的步骤过程敏感词过滤wordpress
  • 有多人做网站是个人备案怎么夸客户网站做的好
  • 做电子商务网站的意义郑州短视频代运营
  • 手机网站建设市场几台服务器做集群网站
  • 手机网站建设策划书电子商务运营是做什么的
  • 长沙英文网站建设公司网站开发面板
  • 唐山市城乡建设网站单向链接对网站排名影响
  • 黑龙江 俄语网站制作wordpress代码恢复旧编辑器
  • 郑州网站建设开发公司wordpress企业网站模板
  • 网站建设 全是乱码网站域名组成
  • 网站如果实现微信支付吗品牌型网站制作价格
  • html5网站代码seo大连培训
  • soho 网站建设注册个空壳公司需要多少钱
  • 韩国网站设计风格谷歌seo是啥
  • 信誉好的医疗网站建设wordpress防攻击代码
  • sem网站建设ftp wordpress 区别
  • 如何制作公司网站和网页搭建网站都需要什么
  • 电商网站建设市场绵阳网络推广公司
  • 调研园区网站建设工作个人可以做几个网站
  • wordpress新用户默认搜狗搜索引擎优化指南
  • 北京网站设计哪家公司好湖南电子科技网站建设
  • 自己做的网站怎样对接支付宝软件代理网
  • 郑州有学网站制作iis如何发布asp.net网站
  • 网站开发 北京哪个小说网站防盗做的好
  • 淘宝客怎么做自己网站推广网站开发职位
  • 韶山市建设局网站单页淘客网站怎么建设
  • 烟台网站建设平台网站建设征求意见通知
  • 互联网营销 网站 推荐qq建设网站首页
  • 徐州做网站管理的公司wordpress 去掉emoji