【发布时间】:2013-10-11 07:08:03
【问题描述】:
我正在尝试在特定目录“/usr/local/freeswitch/bin”中执行发起命令,在 bin 中我必须通过 ./fs_cli 命令运行可执行文件 fs_cli,在 fs_cli 中我必须执行以下命令
originate loopback/1234/default &bridge(sofia/internal/1789)
从终端运行正常,可以从 bin 执行相同的命令
./fs_cli -x "originate loopback/1234/default &bridge(sofia/internal/1789)"
我尝试按照java程序来完成上述任务
Process pr = Runtime.getRuntime().exec("./fs_cli -x \"originate loopback/1234/default &bridge(sofia/internal/1789@192.168.0.198)\"");
BufferedReader br = new BufferedReader(new InputStreamReader(pr.getInputStream()));
String str = null;
while ((str = br.readLine()) != null) {
System.out.println(str);
}
我已经创建了 fs_cli 的符号链接并放置在当前位置 上面的程序显示以下输出
输出
-ERR "找不到原始命令!
就我而言,上面的命令在终端上运行良好,它应该与 java 相同,所以它表明我在某处错了 请帮我解决这个问题。
【问题讨论】:
-
为什么不完全路径或者 /usr/local/freeswitch/bin/fs_cli 不起作用?
标签: java