分页: 1 / 1

2个脚本之间的函数相互调用

发表于 : 2010-09-05 18:19
bt78
如题。
脚本A内容如下:
#!/bin/bash
function welcome
{
if [ $# -ne 2 ]
then
echo "You enter the number is wrong"
else
if [ $1 == zjc ] && [ $2 == 123 ]
then
echo "welcome"
else
echo "reject"
fi
fi
}
请问,在脚本B中要如何调用脚本A。

Re: 2个脚本之间的函数相互调用

发表于 : 2010-09-05 20:31
ptpt52
在脚本B中

开始的地方加上
. /path/to/A

Re: 2个脚本之间的函数相互调用

发表于 : 2010-09-05 21:53
bt78
ptpt52 写了:在脚本B中

开始的地方加上
. /path/to/A
我刚刚按照你的方法去操作了一下,A的脚本名字为check_parameter_num,脚本B的名字为subprogram
在另外一个脚本开头这样写了,可结果仍然不行
#!/bin/bash
./path/to/shell/function/check_parameter_num
echo "succes"

Re: 2个脚本之间的函数相互调用

发表于 : 2010-09-05 21:59
eexpress
点加空格

Re: 2个脚本之间的函数相互调用

发表于 : 2010-09-05 22:19
bt78
eexpress 写了:点加空格
. /path/to/shell/function/check_parameter_num
加了空格,还是报同样的错--说没有那文件

Re: 2个脚本之间的函数相互调用

发表于 : 2010-09-05 22:28
adam8157
bt78 写了:
eexpress 写了:点加空格
. /path/to/shell/function/check_parameter_num
加了空格,还是报同样的错--说没有那文件
path to 的意思是让你填路径...

Re: 2个脚本之间的函数相互调用

发表于 : 2010-09-06 21:11
bt78
在shell中,有局部函数和全局函数的称呼吗?如果有的话,脚本B如何获得脚本A的welcome函数呢?

Re: 2个脚本之间的函数相互调用

发表于 : 2010-09-10 6:53
ptpt52
bt78 写了:在shell中,有局部函数和全局函数的称呼吗?如果有的话,脚本B如何获得脚本A的welcome函数呢?
没有的,如果你用 . /path/to/a/shell/script.sh 这个方法,其实是先执行 这个脚本 /path/to/a/shell/script.sh
因此你这个脚本只能包含函数,否则其他部分也被执行

Re: 2个脚本之间的函数相互调用

发表于 : 2010-09-10 15:48
tusooa
用sm.