0

正如标题中指定的那样,我正在尝试通过 USB 将数据发送到我的 ODROID-Show 外部屏幕。我正在运行一个发送此类数据的 shell 脚本。问题是我可以简单地通过终端运行命令,它运行成功,数据通过 USB 端口发送到我的小屏幕。当我尝试通过 Java 运行相同的命令时,什么也没有发生。

Process proc = Runtime.getRuntime().exec("/bin/bash -c /home/ahmed/ODROID-SHOW-master/example/linux/images.sh /");

指定的命令应该具有 root 权限才能运行。那,我已经切换到root,然后运行代码,没有任何反应。任何想法如何解决这样的问题?

编辑:

如果您可以显示执行以 sudo 为前缀的给定命令的代码,这绝对有效。

我能够以root身份运行该程序。但是,损坏的数据被发送到 ODROIDscreen 而不是有效的图像。虽然它在通过终端时成功传输,但有什么想法会发生这种情况吗?

4

1 回答 1

1

我会检查 bash 解释器执行的脚本是否需要在执行前设置某些环境变量。

我会在执行的 shell 脚本中添加一个调试行来转储环境,如“env > my_dump_env.txt”,然后从命令行和 Java 运行脚本,并进行比较,看看有什么缺失或不同。

于 2016-01-26T14:26:33.040 回答