[20231102]调试bash shell脚本遇到的问题.txt
--//今天想看看我前几天写的kd_off.sh脚本是否正常执行,前几天在家里测试的,没有linux环境在cygwin下测试的。
--//上班在测试环境测试:
$ ./kd_off.sh 4,155 n
./kd_off.sh: line 9: rlbbed: command not found
./kd_off.sh: line 10: rlbbed: command not found
./kd_off.sh: line 11: rlbbed: command not found
./kd_off.sh: line 15: rlbbed: command not found
x /rn dba 4,155 offset 0
x /rn dba 4,155 offset 0
./kd_off.sh: line 30: rlbbed: command not found
sb2 kd_off[-2] @2 0
sb2 kd_off[-1] @4 0
--//为什么?提示找不到rlbbed命令,只能采用source kd_off.sh 4,695 nc的方式执行命令。
--//原来我机器上的rlbbed是定义为函数,这样调用无法访问,如果使用alias就没有问题。
$ export RLWRAP=$(which rlwrap)
$ type rlbbed
rlbbed is a function
rlbbed ()
{
cd /home/oracle/bbed;
$RLWRAP -s 9999 -c -r -i -f /usr/local/share/rlwrap/bbed $ORACLE_HOME/bin/bbed parfile=bbed.par cmdfile=cmd.par
}
$ source kd_off.sh 4,155 n
x /rn dba 4,155 *kd_off[2]
x /rn dba 4,155 *kd_off[3]
x /rn dba 4,155 *kd_off[4]
x /rn dba 4,155 *kd_off[5]
x /rn dba 4,155 *kd_off[6]
x /rn dba 4,155 *kd_off[7]
x /rn dba 4,155 *kd_off[8]
x /rn dba 4,155 *kd_off[9]
x /rn dba 4,155 *kd_off[10]
x /rn dba 4,155 *kd_off[11]
x /rn dba 4,155 *kd_off[12]
x /rn dba 4,155 *kd_off[13]
x /rn dba 4,155 offset 7977
x /rn dba 4,155 offset 7965
sb2 kd_off[0] @136 8020
sb2 kd_off[1] @138 8008
sb2 kd_off[2] @140 7996
sb2 kd_off[3] @142 7984
sb2 kd_off[4] @144 7972
sb2 kd_off[5] @146 7960
sb2 kd_off[6] @148 7948
sb2 kd_off[7] @150 7936
sb2 kd_off[8] @152 7924
sb2 kd_off[9] @154 7912
sb2 kd_off[10] @156 7900
sb2 kd_off[11] @158 7889
sb2 kd_off[12] @160 7877
sb2 kd_off[13] @162 7865
--//这样调式也带来一点点好处,相当于在当前bash shell上执行的,里面的赋值可以直接显示.例如:
$ echo $kd_off_size
14
--//好久不这样使用,有点生疏了.
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/267265/viewspace-2992678/ ,如需转载,请注明出处,否则将追究法律责任。