JAVA提供Runtime允許你能夠執(zhí)行你的腳本文件(包括.exe,.bat,.sh。。。),我在使用過程中出現(xiàn)了一些小問題,所以記錄一下
我的程序需要執(zhí)行一段帶參數(shù)的腳本,所以需要用到
Process java.lang.Runtime.exec(String[] cmdarray, String[] envp, File dir) throws IOException這個方法,在此說下參數(shù)
cmdarray指的是你的命令行,例如:cmdarray = new String[]{"/bin/bash","yourfile.sh","yourparams"} ///bin/bash指的是執(zhí)行的腳本采用bash方式執(zhí)行,yourfile.sh就是你的執(zhí)行腳本,yourparams就是你腳本執(zhí)行的時候所需參數(shù),有時候你需要等你腳本執(zhí)行完畢后再執(zhí)行其他的操作,所以你需要用到process.waitFor()來確保你上一條命令執(zhí)行完畢
如果process.waitFor()!=0代表執(zhí)行完畢,如果你僅僅只是執(zhí)行一條ls -l的命令,那么你直接就可以這么寫Process process = runtime.exec("yourcommand");