Java 使用app发送多个shell命令
好的,我正在学习shell命令是如何工作的,所以我决定开发一个应用程序来发送命令。这就是我得到的Java 使用app发送多个shell命令,java,android,shell,command,Java,Android,Shell,Command,好的,我正在学习shell命令是如何工作的,所以我决定开发一个应用程序来发送命令。这就是我得到的 moveDirectory.setOnClickListener(new OnClickListener(){ public void onClick(View v) { try{ Process send = Runtime.getRunetime().exec(new String[] {"cd /sdcard/music/", "cp p
moveDirectory.setOnClickListener(new OnClickListener(){
public void onClick(View v)
{
try{
Process send = Runtime.getRunetime().exec(new String[] {"cd /sdcard/music/", "cp pic1 /sdcard/pic1"});
send.waitFor();
} catch (Exception ex){
String toast = null;
Log.i(toast, "Couldn't copy file", ex);
}
}
});
但它不起作用,第一个命令起作用,但第二个命令不起作用。我应该补充什么
谢谢
编辑:忘记添加send.waitFor();行使用正常命令delimeter
代码>
moveDirectory.setOnClickListener(new OnClickListener(){
public void onClick(View v)
{
try{
Process send = Runtime.getRunetime().exec(new String[] {"cd /sdcard/music/ ; cp pic1 /sdcard/pic1"});
} catch (Exception ex){
String toast = null;
Log.i(toast, "Couldn't copy file", ex);
}
}
});
在此代码中,您可以使用
1) 转到/sdcard/music
2) 从/sdcard/music
pic1
复制到/sdcard/pic1
使用普通命令delimeter代码>
moveDirectory.setOnClickListener(new OnClickListener(){
public void onClick(View v)
{
try{
Process send = Runtime.getRunetime().exec(new String[] {"cd /sdcard/music/ ; cp pic1 /sdcard/pic1"});
} catch (Exception ex){
String toast = null;
Log.i(toast, "Couldn't copy file", ex);
}
}
});
在此代码中,您可以使用
1) 转到/sdcard/music
2) 从/sdcard/music
pic1
复制到/sdcard/pic1
我在猜测,但您可能误解了要执行的参数。它不是一个要执行的命令列表(实际上是一个批处理/shell脚本),而是一个包含shell要执行的参数的单个命令。让它成为Pepelac建议的一行程序,或者将一系列命令放在一个单独的文件中,稍后使用exec执行,这可能就是您想要的。对于您试图执行的命令,没有任何理由不能使其成为包含完整源路径的单行程序(而不是更改为它),但可能还有其他原因需要执行此操作,您没有提到。我在猜测,但您可能误解了exec的参数。它不是一个要执行的命令列表(实际上是一个批处理/shell脚本),而是一个包含shell要执行的参数的单个命令。让它成为Pepelac建议的一行程序,或者将一系列命令放在一个单独的文件中,稍后使用exec执行,这可能就是您想要的。对于您尝试执行的命令,没有任何理由不能使其成为包含完整源路径(而不是更改为完整源路径)的一行程序,但可能还有其他原因需要执行此操作,您没有提到。您是否拥有成功执行这些目录的所有权限?不知道我需要权限,我需要哪些?如果是权限问题,为什么它会将目录更改为/sdcard/music/,但不会复制文件?您是否拥有成功复制这些目录的所有权限?不知道我需要权限,我应该需要哪些权限?如果是权限问题,为什么它将目录更改为/sdcard/music/,但不复制文件?天哪,真不敢相信它这么简单。。。非常感谢,这就成功了,最后一个问题:我可以添加我想要的吗?是的,但所有的都必须是腐植酸;-象征。还有更多关于bash的信息,你可以在这里找到很棒的链接,这会让我读上几天。非常感谢你!天哪,真不敢相信事情这么简单。。。非常感谢,这就成功了,最后一个问题:我可以添加我想要的吗?是的,但所有的都必须是腐植酸;-象征。还有更多关于bash的信息,你可以在这里找到很棒的链接,这会让我读上几天。非常感谢你!