实例讲解5--其他命令a

69 篇文章 0 订阅

1.eval命令:可用于动态生成和执行代码
  foo=10
  x=foo
  eval  y=’$’$x
  echo  $y
  输入10,即eval y=’$’$x被解释为y=$foo,即y=10。
nDay1="111"
nDay2="222"
nDay3="333"
# 遍历变量nDay1 ...nDay3,打印其值
for i in 1 2 3
do
    n=$i
    eval nVar='$nDay'$i
    echo $nVar
done
应该依次输出 $nDay1  , $nDay2, $nDay3 ,即:
111
222
333

另一个用于数组的例子,
#!/bin/ksh

nDay_1[0]=""
nDay_2[0]=""
nDay_3[0]=""

k=2
for i in 1 2 3
do
    eval "nDay_$i[$k]=$i"  # 赋值, 型如:nDay_x[n]=$i
    eval "nVar=\${nDay_$i[$k]}" # 访问, 型如:nVar=${nDay_x[n]}
    echo ${nVar}  # 打印
done
应该依次输出 ${nDay_1[2]}, ${nDay_2[2]}, ${nDay_3[2]}, 即:
1
2
3

2.exit n:退出
  0代表成功,1-125代表出错代码,128以上引发一个信号。
  我们脚本或许会和别的脚本交互,这个时候需要相互传递信息,exit是被调用进程的返回值,调用进程使用$?获得返回值。
注:exit和return不同,return用于函数返回值,调用函数和被调用函数在同一个进程中,获取返回值都是用$?。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值