我有一个bash CGI日志记录连接到我的服务器,我希望在请求/稳定/服务新连接时,此脚本将参数/变量传递给在后台运行的另一个脚本?这可能吗?我怎么能这样做?
我已尝试过环境变量,但这只能在同一个shell中运行,我不能确定它们是否会在同一个shell上运行。我已经尝试写入文件,但我怎么知道文件何时被编辑,从而允许第二个脚本执行命令。
我开始变得疯狂,这一定是可能的我无法相信“程序”无法共享信息......:O
也许我采取了错误的做法,有人可以提出建议吗?
谢谢, Marco P。
答案 0 :(得分:2)
命名管道可能是一种方式,虽然它是阻塞的:
设置:
mkfifo /path/to/named/pipe
cgi脚本:
echo "some data" > /path/to/named/pipe # blocks until other script consumes!
后台脚本:
while :; do
read data < /path/to/named/pipe # blocks until cgi script produces!
do_stuff_with "$data"
done