有没有办法在其他源脚本

时间:2015-12-13 08:49:48

标签: linux bash

我的问题如下: 我有我的库(让我们称之为qa-baslib.sh)具有各种util函数,我将它包含在测试脚本中,我们正在开发。

现在,其他开发人员创建了bash脚本库,以支持与各种服务器的SSH连接(让我们称之为global_ssh)。它看起来像:

global_ssh

#!/bin/bash

global_ssh(){

   # Doing some ssh stuff
}

我正在寻找global-ssh这样的文件:

qa-baslib.sh

#!/bin/bash

 . /<path-to>/qa-util-scripts/global_ssh

function some_util_function() {
   server=$1
   command=$2

   # Here i'm calling global_ssh function
   timeout -s 9 30 global_ssh $sever $command
}

但是当我最终执行该函数时,通过从命令行获取它,我得到了错误:

]# . /<path-to>/qa-bashlib.sh
]# some_util_function $server $command
]# timeout: failed to run command `global_ssh': No such file or directory

出了什么问题,是否有任何解决方案?

由于

1 个答案:

答案 0 :(得分:1)

正如@ruakh所提到的,timeout无法使用bash函数作为参数运行。

完整答案: execute function with timeout