我有一个脚本调用另一个脚本。问题是运行无穷无尽。 请帮忙。
script1:/ tmp / caseCheck
#!/bin/sh
aaa=1
echo "Begin $1"
case "$1" in
start)
echo "Start"
;;
stop)
echo "Stop"
;;
reload)
$0 stop
$0 start
;;
*)
echo "Usage: $0 {start|stop|reload}"
;;
esac
script2:/ tmp / trigger
#!/bin/bash
do_admin() {
echo "Starting Trigger"
}
do_admin
. /tmp/caseCheck "reload"
echo "-----------------------"
exit 0
当我运行./trigger时,预期的结果是:
启动触发器
开始重新加载
开始停止
停止
开始
开始
'----------------'
但它一直在继续......
制作以下输出
启动触发器 开始重新加载 启动触发器 开始重新加载 启动触发器 开始重新加载 启动触发器 开始重新加载 启动触发器 开始重新加载 启动触发器 开始重新加载
...
请帮忙
答案 0 :(得分:2)
. /tmp/caseCheck "reload"
是问题所在。基本上,您要将/tmp/caseCheck
发送到/tmp/trigger
并将reload
设置为您的参数。采购后,$0
仍然触发。删除点应该修复它。