我正在尝试从 java 代码创建一个 shell 脚本。我正在使用以下方法创建 shell 脚本。
String cmd = "echo -e \"echo -e abc\\\0177\\\0177\\\0177\\\0177\\\0177\\\0177\\\0177\\\0177\" > ";
String [] commands = { "/system/bin/sh", "-c", cmd + "script.sh " };
Runtime.getRuntime().exec(commands);
但是,当我打开 script.sh 文件时,我看到以下内容:
echo -e abc\*7\*7\*7\*7\*7\*7\*7\*7
我想要的是:
echo -e "abc\0177\0177\0177\0177\0177\0177\0177\0177"
我做错了什么?知道如何解决这个问题吗?
最佳答案
不确定你为什么需要这个,但你可以在 echo
和 2 个反斜杠中使用单引号:
String cmd =
"echo -e 'echo -e abc\\\\0177\\\\0177\\\\0177\\\\0177\\\\0177\\\\0177\\\\0177\\\\0177' > ";
关于java - 使用 echo 命令将八进制字符串写为 ASCII 字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28251166/