shell学习5

一.数组

1.数组的定义

  • 方法一
array=(value1 value2 value3...)

# 输出定义的数组
echo ${array[*]}
echo ${array[@]}
  • 方法二
array=([0]=one [1]=two [2]=three)
  • 方法三
array[0]=one
array[1]=two
array[2]=three
  • 方法四:动态地定义数组变量
array=($(命令))
array=(`命令`)

2.数组元素的输出

# 输出定义的数组所有元素
echo ${array[*]}
echo ${array[@]}

# 输出单个元素
echo ${array[0]}

3.数组的删除

# 删除单个元素
unset array[2]

# 删除整个数组
unset array

4.数组的截取

# 从下标为1开始截取,截取总共3个元素
echo ${array[@] :1:3}

5.数组的替换

# 将数组中元素为2的替换为4,但输出数组时其中的元素还是原来的
echo ${array[@]/2/4} 

6.关联数组

用关联数组可以使用字符串作为数组索引,不过需要先声明

# 声明关联数组
declare -A array
array=([no]=bb [yes]=aa)

# 使用 ! 获取索引值
echo ${!array[@]}

二.grep命令

在一个或多个文件中查找特定模式的字符串,如果有匹配到字符串,则输出整个行的内容;若没有匹配到,则不输出如何内容

grep [参数] 需要查找的字符串 文件名1 文件名2

常用参数

参数说明
-i忽略大小写
-n显示输出当前一行的行号

三.Expect工具

expect用于实现自动和交互式任务进行通信

1.命令

命令说明
spawn调用要执行的命令
expect eof于spawn对应,表示捕捉终端输出信息终止
expect监听交互输出
send进行交互输入
set设置变量值
interact交互完成后,将控制权交给控制台
settimrout nn为-1时表示expect永不超时,设为其他值时,表示在n后没有捕捉到expect的监听内容,则退出

搞钱的第十七天,加油

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值