操作系统 实验12 批处理操作接口2:获取数组长度、变量作用域

1、获取数组name的长度

命令:echo ${#name[@]}

结果:

2、获取数组sc的长度

命令:echo ${#sc[*]}

结果:

3、获取数组元素sc[3]长度

命令:echo ${#sc[3]}

结果:

4、获取数组name自下标1起的连续三个元素值

命令:echo ${name[@]:1:3}

结果:

5、显示name数组元素name[3]自下标1起的连续4个字符

命令:echo ${name[3]:1:4}

结果:

6、连接数组name和sc,将结果赋给ab

命令:ab=(${name[@]}${sc[@]})

结果:

7、将数组ab2中的元素值abc替换为os,并将替换后的数组赋给ab2

命令:ab2=(${ab2[@]/abc/os})

结果:

8、建立文件Namespace1.sh,内容为:

#!/bin/bash

v1=100

echo v1 in $0:$v1

运行:. ./Namespace1.sh

结果: 

9、建立文件Namespace3.sh,其内容为:

 

#!/bin/bash

function ch_var(){

echo 在函数中修改前v1的值:$v1

v1=200

}

v1=100

echo 调用函数ch_var前v1的值:$v1

ch_var

echo 调用函数ch_var后v1的值:$v1

运行:. ./Namespace3.sh

结果:

10、建立文件Namespace4.sh,其内容为:

#!/bin/bash

function ch_var(){

v2=200 #v2默认是global类型

}

echo 尚未调用函数时v2的值:$v2

ch_var

echo 调用函数ch_var后v2的值:$v2

运行:

unset v2

. ./Namespace4.sh

结果:

11、建立文件Namespace5.sh:

#!/bin/bash

function ch_var(){

local v3=200 #v3定义为local类型

echo 在函数中执行时v3的值:$v3

}

echo 尚未调用函数时v3的值:$v3

ch_var

echo 调用函数ch_var后v3的值:$v3

运行:

. ./Namespace5.sh

结果:

12、建立文件Namespace6.sh:

#!/bin/bash

sfunc()

{

   echo "参数: $@"

}

sfunc 1 3 a b

echo 输出脚本命令行参数:$@

运行:

. ./Namespace6.sh p1 23 p3 4a

结果:

13、建立文件Namespace7.sh:

#!/bin/bash

sfunc()

{

   echo 在函数中输出全局变量v4的值: $v4  #行1

   local v4=200abc     #行2

   echo 在函数中输出局部变量v4的值: $v4  #行3

}

v4=100  #行4

sfunc

echo 在函数外输出全局变量v4的值: $v4  #行5

运行:

. ./Namespace7.sh

结果:

  • 6
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值