【发布时间】:2013-05-08 08:07:41
【问题描述】:
我正在尝试像这样使用nohup 调用函数:
function1(){
while true
do
echo "function1"
sleep 1
done
}
nohup function1 &
# ...... some other code
但可能是nohup 看不到该功能,我收到此错误:
nohup: failed to run command `function1' : No such file or dictionary
我不想为我的函数创建新的 sh 文件。我该如何解决这个问题?
【问题讨论】:
-
nohup 需要文件(错误消息清楚地说明)作为参数,而不是函数。但是你可以做的是:修改上面的脚本,让它接受一个新的参数(例如“--nohup”),当这个参数被传递时,只需调用
function1并在你的脚本中用nohup $0 --nohup &替换nohup function1 & -
你的意思是我必须在函数中使用
nohup?我对调用函数的--nohup选项感到困惑!
标签: linux bash function shell nohup