UDP脚本中的UDP发送错误(bash)

时间:2014-08-06 14:13:44

标签: bash udpclient puredata

使用Raspi / Debian - 我有一个脚本可以解析iwlist扫描的结果,并通过UDP将它们发送到Pure Data补丁。这在gui模式下运行良好,但现在我尝试使用以下内容在另一个脚本中自动执行整个过程:

pd-extended -nogui /home/pi/patch.pd & /home/pi/libOSC/scan.sh && fg

但是当我运行这个新脚本时,UDP似乎只将信息发送到Pure Data一次,然后扫描继续,但Pd不接收数据包。任何帮助都将不胜感激。

2 个答案:

答案 0 :(得分:0)

运行/home/pi/libOSC/scan.sh会发生什么?它只发送一次结果?那么也许您需要以不同的方式执行此操作,例如使用“shell”或“popen”对象从pd中调用该脚本。或者通过UDP实现轮询命令,返回值。

答案 1 :(得分:0)

您的scan.sh脚本看起来如何?

你可能希望这样做:

pdhost=localhost
pdport=9999

do_scan() {
  ## some code here that does the scan and print's the result to stdout
}

doscan | while read line
do
   echo "${line};" | pdsend ${pdhost} ${pdport}
done

而不是以下内容:

doscan | pdsend ${pdhost} ${pdport}