小编QY *_*Lin的帖子

无法使用Runtime.exec()在Android Java代码中执行shell命令"echo"

我可以Runtime.exec()用来执行像" getprop"和" ls system" 这样的shell命令,它们工作正常.

但是,当我使用" echo $BOOTCLASSPATH"," echo \\$BOOTCLASSPATH"或" echo HelloWorld"时,它不会在stdout中显示它.

logcat显示:

I/AndroidRuntime( 4453): VM exiting with result code -1.
Run Code Online (Sandbox Code Playgroud)

这是我的代码:

try {
    java.lang.Process proc = Runtime.getRuntime().exec("echo -e \\$BOOTCLASSPATH");
    String line = null;

    InputStream stderr = proc.getErrorStream();
    InputStreamReader esr = new InputStreamReader (stderr);
    BufferedReader ebr = new BufferedReader (esr);
    while ( (line = ebr.readLine()) != null )
        Log.e("FXN-BOOTCLASSPATH", line);

    InputStream stdout = proc.getInputStream();
    InputStreamReader osr = new InputStreamReader (stdout);
    BufferedReader obr = …
Run Code Online (Sandbox Code Playgroud)

java shell android runtime.exec echo

11
推荐指数
1
解决办法
2万
查看次数

标签 统计

android ×1

echo ×1

java ×1

runtime.exec ×1

shell ×1