随笔分类 - Shell
摘要:shell 函数,递归函数,创建函数库 一: shell 函数的概述 1.1 什么是函数 1.2 函数的定义方法 1.3 函数的返回值 1.4 函数的传参 1.5 函数变量的作用范围 二:递归函数 2.1 阶乘 2.2 递归目录 三,创建函数库 3.1 编写函数库 3.2 调用函数库 一: shel
阅读全文
摘要:sed 一 sed 编辑器 sed 是一种流编辑器,流编辑器会在编辑器处理数据之前基于预先提供的一组规则来编辑数据流 sed 编辑器可以根据命令来处理数据流中的数据,这些命令要么从命令行中输入,要么存在在一个命令文件中 ###1.1sed的工作流程 sed 的工作流程主要包括 读取,执行 ,显示,
阅读全文
摘要:shell 脚本之免交互 一: Here Document 免交互 1.1 概述 使用 I/O 重定向的方式将命令列表提供给交互式程序或命令。比如 ftp ,cat ,或者read 命令 是标准输入的一种替代品,可以帮助脚本开发人员不必使用临时文件来构建输入信息,二十直接就地生产一个“文件” 并用作
阅读全文
摘要:awk 1 工作原理 逐行读取文本,默认以空格或tab键为分隔符进行分隔,将分隔所得的各个字段保存到内建变量中,并按模式或者条件执行编辑命 sed命令常用于一整行的处理, 而awk比较倾向于将一行分成多个"字段"然后再进行处理。awk信息的读入也是逐行读取的,执行结果可以通过print的功能将字段数
阅读全文
摘要:正则表达式 通常用于判断语句中,用于检查某一字符串是否满足某一格式 正则表达式是由普通字符与元字符组成 普通字符包括大小写字母、数字、标点符号及一些其他符号 元字符是指在正则表达式中具有特殊意义的专用字符,可以用来规定其前导字符(即位于元字符前面的字符)在目标对象中的出现模式 一: 基础正则表达式常
阅读全文
摘要:shell 里常用命令 sort,uniq,tr,dos2unix,cut,eval 一:sort 排序 sort 命令 以**行位单位**,对文件内容进行排序,也可以根据不同的数据类型来排序。默认按照首字母顺序排序 1.格式 sort [选项] 参数 cat file | sort 选项 2.常用
阅读全文
摘要:数组排序 一 冒泡排序 类似于气泡上涌的动作,会将数据在数组中从小到大或者从大到小不断的向前移动。 基本思想: 冒泡排序的基本思想是对比相邻的两个元素值,如果满足条件就交换元素值,把较小的元素移动到数组前面,把大的元素移动到数组后面(也就是交换两个元素的位置),这样较小的元素就像气泡一样从底部上升到
阅读全文
摘要:数组与函数之间的传参 一: 向函数传数组的参数 #!/bin/bash test1 () { echo "函数接收到的参数列表为: $@" #这里是函数位置变量$@ #将接受到的参数,定义成一个新的数组 newarr=($@) #位置参数,如果使用$1,只会取第一个值 echo "新的数组的值为:
阅读全文
摘要:数组 ## 一:定义数组 1.1 什么是数组 以括号"()"括起来,中间以空格相间隔 数组里,里面的值称为元素,元素的下标(索引)是从零开始 eg: 数值类型: num=(10 20 30 40) 字符类型:name=( "zhang san" "li si" "wang wu") 1.2 定义数组
阅读全文
摘要:shell 脚本练习之多重循环 1.使用循环,划出长为20,宽为10 的矩形 #!/bin/bash for ((i=1;i<=10;i++)) #外循环循环十遍。这是输出多少行,即宽 do for ((n=1;n<=20;n++)) #内循环循环二十遍。这是矩形的长。外循环每循环一次,内循环输出2
阅读全文
摘要:for 循环和while 循环 的 多重循环与中断循环 1 .多重循环(for 和while 都可以使用多重循环) #!/bin/bash for ((i=1;i<=5;i++)) do echo "外循环为:$i" for (( j=1;j<=3;j++)) do echo " 内循环为: $j"
阅读全文
摘要:for循环的多线程执行 当我们使用for 循环ping 多台主机时,由于是串行执行,所以效率不高。 1,串行执行 #!/bin/bash #记录ping 开始时间 echo "$(date +%T) start "> ./time.txt for i in 192.168.23.{1..25} do
阅读全文
摘要:shell 脚本练习之 while ,for 循环 1.计算从1到100所有整数的和 方法一: #!/bin/bash #设置 变量a 初始值为1 , a=1 #变量sum用来接运算后的值 sum=0 while [ $a -le 100 ] #变量a 的 取值范围是 1 -100 do sum=$
阅读全文
摘要:shell 脚本练习之 if ,case 语句 ###1 检查用户家目录中的 test.sh 文件是否存在,并检查是否有执行权限 #!/bin/bash FILE=$HOME/test.sh #将家目录中的test.sh 作为值 赋给变量 FILE #先使用第一个if 语句,判断文件是否存在 if
阅读全文
摘要:#使 用while 循环逐行读取文件内容 使用 set 命令查看当前shell变量 linux 里 分隔符保存在 变量 "IFS" 里,默认的分隔符是 空格"" ; 制表符 \t ; 换行符 \n [root@host103 test]# set |grep IFS 使用for 循环读取文件内容 当
阅读全文
摘要:shell 循环语句 一:for 循环 1.1. for 循环语句格式 1.1.最简循环: for ((i=1;i<=10;i++)); # 变量i赋值1,判断变量i是否小于等于10,如果成立,则i值+1‘,等同((i=1;i<=10;i=$[i+1]))。 i=1 是初始化一个变量,i<=10 是
阅读全文
摘要:Shell 编程之条件语句 一 ,条件测试 1.1 文件测试与整数测试 1.1.1 test 命令 测试表达式是否成立,若成立,则返回0,否则返回其他数值(返回值使用 echo $? 查看) 格式1: test 条件表达式 格式2: [ 条件表达式 ] *#条件表达式与中括号两边至少各有一个空格 1
阅读全文
摘要:一 Shell 脚本概述 1.1 shell 脚本的概念 将要执行的命令按顺序保存到一个文本文件 要给该文件可执行权限 可以结合各种Shell 控制语句以完成更复杂的操作 1.2 Shell 脚本应用场景 重复性操作 交互性任务 批量事务处理 服务运行状态监控 定时任务执行 ...... 1.3 S
阅读全文