【发布时间】:2013-02-10 16:47:25
【问题描述】:
我正在尝试从 android 应用程序执行 strace 命令以获取 PID。代码段如下:
Runtime.getRuntime().exec("strace -p 20436 -o /mnt/sdcard/sampleTrace11.txt");
文件 sampleTrace11.txt 已创建,但它是空的。当我从 shell 命令提示符执行相同的命令时,文件会写入数据。谁能帮帮我..
【问题讨论】:
-
你用
strace的全路径测试了吗? -
@sputnick 如果
strace没有启动,它不会创建一个空文件(注意使用-o选项,而不是输出重定向或类似的东西) -
你能告诉我该怎么做吗?
-
@srooth 如果我知道 java... 好吧,你有办法
exec一个程序并获得它的标准错误和标准输出吗?也许strace说明了它为什么拒绝工作?如果getRuntime().exec支持shell 重定向,也许添加2> /mnt/sdcard/straceerr.txt >/mnt/sdcard/straceout.txt看看那里是否出现了有用的东西? -
@Anton 我尝试了 2> 选项..但是没有创建文件..