我想编写一个执行一些 Linux 命令的 java 代码:
String cmd = "cd /home/arps/FBI" ;
Process p=Runtime.getRuntime().exec(cmd);
String [] arr = new String [9] ;
arr[0] = "cd /home/arps/FBI" ;
for(int n = 1 ; n < 9 ; n++){
String command = "mv" + " " + "/home/arps/FBI/hr" + n + ".txt" + " " + "/home/arps/FBI/hrs" + n +".txt" ;
arr[n] = command ;
}
Process pp=Runtime.getRuntime().exec(arr);
在上面的代码中:我尝试将名为 hr1, hr2 .... 的 8 个文件重命名为 hrs1 , hrs2 ... 等。在 cd 命令中,我尝试输入所需的目录。但是,我也使用了绝对路径。但是代码给出了错误:
java.io.IOException: Cannot run program "cd": java.io.IOException: error=2, No such file or directory
java.io.IOException: Cannot run program "mv /home/arps/FBI/hr1.txt /home/arps/FBI/hrs1.txt": java.io.IOException: error=2, No such file or directory
任何人都可以帮助我为什么会发生这种情况,尽管我手动执行了这些命令手段"mv /home/arps/FBI/hr1.txt /home/arps/FBI/hrs1.txt"
并正确执行?