![](https://img-blog.csdnimg.cn/e9d732cf243f47f995e0a5a7129cd176.jpeg?x-oss-process=image/resize,m_fixed,h_224,w_224)
Shell
文章平均质量分 71
Shell脚本学习笔记
王茗渠
学习笔记共享
(绝大部分为手敲形成,如遇错误烦请留言指出)
展开
-
01. Shell-小工具
cut是列截取工具;用于列的截取。#“,”表示和,-f1,7表示第1和第7列sort工具用于排序;它将文件的每一行作为一个单位,从首字符向后,一次按ASCII码值进行比较,最后将他们按升序输出uniq用于去除连续的重复tee工具是从标准输入读取并写入到标准输出和文件,即双向覆盖重定向(屏幕输出|文本输入)diff工具用于逐行比较文件的不同注意:diff描述两个文件不同的方式,告诉我们第一个文件怎样改变才能和第二个文件匹配。paste工具用于合并文件行tr用于字符转换、替换和删除;原创 2023-11-03 11:16:01 · 34 阅读 · 0 评论 -
02.Bash的特性
常见快捷键快捷键功能tab自动补全命令或文件Ctl+C终止前台运行的程序Ctl+Z将前台运行的程序挂起到后台Ctl+D退出,等价于exitCtl+L清屏Ctl+A或home光标移动到命令行的最前端Ctl+E或end光标移动到命令行的后端Ctl+U删除光标前所有字符Ctl+K删除光标后所有字符Ctl+R搜索历史命令常用通配符通配符功能*匹配0个或多个任意字符?匹配任意单个字符原创 2023-11-03 11:17:37 · 25 阅读 · 0 评论 -
03. Shell- 简介
shell就是人机交互的一个桥梁简单来说shell脚本就是将要执行的命令保存到文本中,按照顺序执行。shell脚本是解释型的,意味着不需要编译。原创 2023-11-03 11:31:28 · 20 阅读 · 0 评论 -
04. Shell-变量
如果某个内容需要多次使用,并且再代码中重复出现,那么可以使用变量带边该内容。这样在修改内容的时候仅仅需要修改变量的值即可。代码运行的过程中,可能会把某个命令执行的结果保持起来,后续代码需要使用这些结果,就可以直接使用这个变量。格式变量的名称 = 变量的值 #变量的名称:用来临时保存数据的 #变量的值:就是临时的数据举例number=10注意等号两边的内容不能有空格虽然可以给变量(变量的名称)赋予任何值,但是对于变量的名称是有要求的。变量的名称严格区分大小写,建议使用大写字母;原创 2023-11-03 11:32:31 · 32 阅读 · 0 评论 -
05. Shell-算数运算
i++和++i只针对变量值,没有影响;而对表达式来说,i++表示先赋值再运算,++i表示先运算再赋值。原创 2023-11-03 11:33:11 · 440 阅读 · 0 评论 -
06. Shell-条件判断
符号“;”、“&&”、“||”都可以用来分割命令或者表达式;分号“;”完全不考虑前面的语句是否正确执行,都会执行“;”后面的内容;“&&”符号需要考虑“&&”前面的语句正确性,前面语句正确执行才会执行“&&”后的内容;“||”符号需要考虑“||”前面的语句的非正确性,前面语句执行错误才会执行“||”后的内容;如果“&&”和“||”一起出现,则从左向右依次执行,且按照“&&”和“||”各自的原则;原创 2023-11-03 11:34:33 · 251 阅读 · 0 评论 -
07. Shell-流程控制
分叉路口,二选一。添加一个条件判断,如果条件判断为真(True)则执行命令1;如果条件判断为假(False)则执行命令2选择很多,能走的路只有一条。如果条件1满足,执行命令1后结束;如果条件1不满足,再看条件2,如果条件2满足则执行命令2后结束;如果条件1和条件2都不满足,那么执行命令3。多次判断,多条路,能走的路只有一条。如果条件1满足,执行命令1;如果条件2也满足执行命令2,如果不满足只执行命令1,然后结束。如果条件1不满足,不看条件2,直接看条件3,如果条件3满足执行命令3;原创 2023-11-03 11:35:20 · 118 阅读 · 0 评论 -
08. Shell-循环语句
不带列表的for循环,执行时由用户指定参数和参数的个数while循环语句,条件为真就进入循环;条件为假就退出循环。until循环,条件为假就进入循环;条件为真就退出循环。并发控制指控制程序多并发执行。“{程序代码}&”表示将程序放到后天并行执行。如果需要等待程序执行完毕后再执行后续代码,需要添加“wait”。注意:针对哪块代码并行处理就用“{}&”括起来那段代码。大圈套小圈一个循环体内又包含另外一个完整的循环结构,称为循环嵌套;原创 2023-12-27 17:30:32 · 322 阅读 · 0 评论 -
09. Shell-数组
数组与变量相似,都可以存放数据。数组与变量的区别,变量只能存储一个数据,而数组可以存放多个数据。原创 2023-12-27 17:32:59 · 286 阅读 · 0 评论 -
10. Shell-函数
格式函数名称() {函数体(一堆命令的集合,来实现某个功能) }举例hello()echo "你好世界"原创 2023-12-27 17:34:13 · 313 阅读 · 0 评论 -
11. 正则表达式
我要找什么?找数字 [0-9]找字母 [a-zA-Z]找标点符号 [[:punct:]]我要如何找?以什么为首 ^key以什么结尾 key$包含什么或不包含什么 [abc] ^ [abc] [ ^abc] ^ [ ^abc]我要找多少?找前导字符出现0次或连续多次 ab*找任意单个(一次)字符 ab.找任意字符 ab.*找前导字符连续出现几次 {n} {n,m} {n,}找前导字符出现1次或多次 go+原创 2023-12-27 17:39:25 · 850 阅读 · 0 评论 -
12. Shell-三剑客
awk是一种编程语言,主要用于Linux或Unix下对文本和数据的处理。处理的数据可以是来自标准输入、一个或多个文件、其他命令输出。awk的处理文件和数据的方式:逐行扫描文件,默认从第一行到最后一行,寻找匹配的特定模式的行,并在这些行上进行想要的操作。在awk中可以定义变量,调用变量时无需使用“$”直接写变量名即可调用。原创 2023-12-27 17:40:31 · 366 阅读 · 0 评论 -
13. Shell-附录
在Linux中重定向指的是I/O重定向。即输入(input)/输出(output)的缩写。这个功能可以把命令行的输入重定向为从文件中获取内容,也可以把命令行的输出结果重定向到文件中。可以将结果通过管道符“|”重定向给下一条命令执行。原创 2024-01-02 11:15:28 · 408 阅读 · 0 评论 -
14. Shell-案例之练习
判断当前主机是否可以ping通远程主机。原创 2023-12-27 17:46:31 · 383 阅读 · 0 评论 -
15. Shell-案例之经典
针对没有用的输出信息可以使用“> /dev/null 2&>1”或“&> /dev/null”使其不打印到屏幕上,更推荐使用“&> /dev/null”让代码更简介一点。COMMAND=$* #表示执行脚本传入参数的列表(不包括$0,$0是脚本本身)do #使用awk的定位(/^[^#]/)可以去除文件中的注释内容expect -c "" #使用命令expect -c可以将expect语法融入shell语法中。原创 2023-12-27 17:47:32 · 381 阅读 · 0 评论 -
16. Shell-结课脚本
【代码】16. Shell-结课脚本。原创 2024-04-24 11:57:07 · 131 阅读 · 0 评论