Shell运维编程
文章平均质量分 60
shell 是操作系统的最外层。shell 合并编程语言以控制进程和文件,以及启动和控制其它程序。shell 通过提示您输入,向操作系统解释该输入,然后处理来自操作系统的任何结果输出来管理您与操作系统之间的交互。
幽月静语
这个作者很懒,什么都没留下…
展开
-
01 Shell Script概述
Shell script是利用shell的功能所写的一个程序,这个程序是使用纯文本文件。 Windows/Dos下的批处理相似。 就是用各类命令预先放入到一个文件中,方便一次性执行的一个程序文件。 脚本中包含: 变量 Shell 语法 命令/bin/bashnum=1dothenfidone。原创 2024-09-06 08:00:00 · 418 阅读 · 0 评论 -
02 Shell Script注释和debug
# 代表不解释不执行 语法:#原创 2024-09-07 08:00:00 · 239 阅读 · 0 评论 -
03 Shell Script变量和参数
如果在程序中,需要把2个数据,或者多个数据进行求和的话,那么就需要把这些数据先存储起来,然后把它们累加起来即可 Shell script 运行过程中存储一个数据,需要一个叫做变量的东西! 强调:shell的变量是弱类型的 变量定义:变量名称=量值变量名称{变量名称} 变量名称: 由字母、数字、下划线组成,不能有空格 字母开头 不能是shell关键字 量值: 不能包含空格,如果包含空格需要用双引号引用。原创 2024-09-10 08:00:00 · 328 阅读 · 0 评论 -
04 Shell Script环境变量&局部变量
环境变量概念: 环境变量可用于定义shell的运行环境,环境变量也可以说是一个全局的变量(在环境的任何地方都可以调用环境变量值),环境变量可以在配置文件中定义与修改,也可以在命令行中设置,但是命令行中的修改操作在终端重启时就会丢失,因此最好在配置文件中修改(用户家目录的“.bash_profile“文件或者全局配置“/etc/profile”、“/etc/bashrc”文件或者“/etc/profile.d”文件中定义)将环境变量放在profile文件中,每次用户登录时这些变量值将被初始化。原创 2024-09-12 08:00:00 · 632 阅读 · 0 评论 -
05 Shell Script算术计算
算术表达式的帮助文档: let是shell内置的命令,通过help可以学习其语法格式 ((v1+v2))双括号是shell的符合命令,语法格式与let类似 类似的$[v1+v2]也是可以做算术计算 这种方式中可以只用变量,变量可以忽略$符号 expr是用户空间程序,通过man命令可以学习其语法格式 expr的跨平台移植性要好一些 因为expr是外部程序,所以使用时要特别注意,所有选项参数要用空格分开 复合命令算术扩展:(())原创 2024-09-14 08:00:00 · 302 阅读 · 0 评论 -
06 Shell Script特殊变量和模式匹配
从右边开始匹配并删除最大的匹配后缀:${变量%%匹配规则} 从左边开始匹配并删除最大的匹配前缀:${变量##匹配规则} 只有在匹配规则中使用了*匹配符号时,%和%%,#和##才有区别。 从右边开始匹配并删除最小的匹配后缀:${变量%匹配规则} 从左边开始匹配并删除最小的匹配前缀:${变量#匹配规则} [] :匹配中括号内规定的单个字符。 发生在路径扩展中的模式匹配(通配符) * :匹配0到多个任意字符。 变量取值过程中可以加入模式匹配。原创 2024-09-15 08:00:00 · 337 阅读 · 0 评论 -
07 Shell Script条件测试表达式
条件测试描述:Linux的Shell中存在一组测试命令,该组命令用于测试某种条件或某几种条什是否真实存在。测试命令是判断语句和循环语句中的条件测试工具,所以,其对于编写Shell非常重要 测试命令用于测试表达式的条件的真假。如果测试的条件为真,则返回一个0值;如果测试条件为假,将返回一个非0整数值。原创 2024-09-18 08:00:00 · 286 阅读 · 0 评论 -
08 Shell Script条件判断
帮助文档:help if 属于shell中的复合命令 从语法可以看出涉及COMMANDS,在之前的学习中已经学习了不同用途的命令,都可以依据这些命令的执行结果来判断条件分支 语法:] fi 中括号是可选的意思 分号可以使用换行符替代 根据判断COMMANDS的退出状态选择: COMMANDS成功执行: COMMANDS执行失败: elif是else if的简写,在shell中空白符比较敏感# 创建sh文件。原创 2024-09-19 08:00:00 · 325 阅读 · 0 评论 -
09 Shell Script for循环结构语句
属于shell的符合语句 可以看出帮助信息给出了两种语法 语法:done 循环遍历WORDS中的元素,每次将元素赋值给NAME– NAME:变量 WORDS:被扩展后得到的一个集合/列表exp2;exp3 ));done 跟据(())种给定的三个算术表达计算循环 exp1:用于循环判断的变量初始值 exp2:循环判断的结束值 exp3:循环控制的步进值。原创 2024-09-20 08:00:00 · 311 阅读 · 0 评论 -
10 Shell Script while和unitl循环结构语句
Shell编程中循环命令用于特定条件下决定某些语句重复执行的控制方式,有三种常用的循环语句:for、while和until。while循环和for循环属于“当型循环”,而until属于“直到型循环”。原创 2024-09-23 08:00:00 · 221 阅读 · 0 评论 -
11 Shell Script函数的定义和使用
function 函数名() {语句[return] 关键字function表示定义一个函数,可以省略,其后是函数名,有时函数名后可以跟一个括号,符号“{”表示函数执行命令的入口,该符号也可以在函数名那一行,“}”表示函数体的结束,两个大括号之间是函数体 语句部分可以是任意的Shell命令,也可以调用其他的函数 如果在函数中使用exit命令,可以退出整个脚本,可以使用break语句来中断函数的执行。原创 2024-09-27 08:00:00 · 408 阅读 · 0 评论 -
12 Shell Script函数的应用
函数优点: 函数在程序设计中是一个非常重要的概念,它可以将程序划分成一个个功能相对独立的代码块,使代码的模块化更好,结构更加清晰,并可以有效地减少程序的代码量。 递归函数: 如果一个函数在内部调用自身本身,这个函数就是递归函数。有很多数学问题都非常适合于采用递归的思想来设计程序求解,例如阶乘、汉诺(hano)塔等。 很多人都曾经听说过fork 炸弹,它实际上只是一个非常简单的递归程序,程序所做的事情只有一样:不断fork 一个新进程。原创 2024-09-28 08:00:00 · 596 阅读 · 0 评论 -
13 Shell Script grep命令
找出以#开头的行内容*:"$1":*);;原创 2024-09-30 08:00:00 · 385 阅读 · 0 评论 -
14 Shell Script正则表达式
正则表达式是一个描述字符串集合的模式/规则 正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本、 正则表达式由普通字符和元字符组成 普通字符具有自身的字符意义 元字符具有特殊意义 grep支持两种正则表达式: 基本正则表达式 扩展正则表达式。原创 2024-10-04 08:00:00 · 182 阅读 · 0 评论 -
15 Shell Script sed命令
非交互式的文本流编辑器,能处理多个文本,支持正则表达式 基本语法格式: sed的option n:sed默认输出一遍处理的文本,-n选项会禁止这一行为 e:sed默认接收一个编辑语句,如果由多条可以用-e标识 f:sed读取-f指定的文件,解释执行文件内的编辑语句 i:sed将修改结果直接覆盖回文件 r:sed开启对扩展正则表达式的支持 sed的Address。原创 2024-10-05 08:00:00 · 402 阅读 · 0 评论 -
16 Shell Script管道
管道是一个或多个命令的序列,用字符|分隔: 什么是管道: 管道前面的命令的输出作为管道后面命令的输入 管道中的命令都作为单独的命令来执行(即,在一个子shell中启动)原创 2024-10-06 08:00:00 · 197 阅读 · 0 评论 -
17 Shell Script cut命令
cut中文翻译是剪的意思,他就是负责剪切文本,cut是以每一行为一个处理对象的,这种机制和sed是一样的 cut命令用来显示行中的指定部分,删除文件中指定字段。cut经常用来切割文件的内容。原创 2024-10-07 08:00:00 · 308 阅读 · 0 评论 -
18 Shell Script sort和uniq命令
sort 命令是帮我们依据不同的数据类型进行排序,并将结果写到标准输出。如果File 参数指定多个文件,那么sort 命令将这些文件连接起来,并当作一个文件进行排序 选项与参数 –f :忽略大小写的差异,例如A 与a 视为编码相同; –b :忽略最前面的空格符部分; –n :使用『纯数字』进行排序(默认是以文字型态来排序的); –r :反向排序; –u :就是uniq,相同的数据中,仅出现一行代表;原创 2024-10-08 08:00:00 · 207 阅读 · 0 评论