Java中是否有可用於查詢作業的API?換句話說,我正在尋找api的「工作」命令,以便我可以瞭解作業的狀態(running
,stopped
等)。理想情況下,我希望能夠提交工作,但我認爲它可以通過調用shell和通過輕鬆實現&
適用於Java的Linux shell作業API
1
A
回答
1
如果你有/ develop - shell腳本來處理Job,那麼你可以使用java.lang.process apis來執行那個shell腳本看看它是否能滿足你的目的。您也可以將參數和參數一起傳遞。以下是代碼片段可能對您有用。
import java.io.IOException;
import java.io.InputStream;
public class MYProcess
{
int startProcess()
{
String cmd = "/opt/test/bin/mystart.sh"
// create a process for the shell
ProcessBuilder pb = new ProcessBuilder("bash", "-c", cmd);
// use this to capture messages sent to stderr
pb.redirectErrorStream(true);
Process shell = null;
int shellExitStatus =-1;
try
{
shell = pb.start();
}
catch (IOException e)
{
e.printStackTrace();
}
InputStream shellIn = shell.getInputStream();
try
{
shellExitStatus = shell.waitFor();
//logger.info("call exit status:" + shellExitStatus);
//logger.info("If exit status is not zero then call is not successful. Check log file.");
}
catch (InterruptedException e)
{
//logger.error("error while call" + e);
e.printStackTrace();
} // wait for the shell to finish and get the return code
return shellExitStatus;
}
}
1
我認爲你在找什麼是java.lang.process,但它實際上不能返回狀態(運行,停止等),而是隻能返回輸出(err,std)或退出值。
1
可以通過ProcessBuilder /運行時apis調用Shell命令。除此之外,沒有Java API。 (I doubt即使是C api也存在,如果是這樣,你可以使用JNI和控制進程)
相關問題
- 1. 適用於MongoDB的Java API
- 2. 適用於Java的CSV API
- 3. 適用於C或Java的Linux無線API
- 4. 適用於Linux的Java分析工具
- 5. Java URLConnection適用於windows,但不適用於linux
- 6. Java正則表達式適用於Linux,但不適用於Windows
- 7. linux shell和java
- 8. AS3打印作業不適用於Chrome
- 9. 適用於Windows的Java庫VHD API
- 10. 適用於Java SE的藍牙API
- 11. 適用於Android的Facebook API適用於
- 12. 適用於Android的Linux on Linux
- 13. NLog不適用於Linux
- 14. 適用於Android的Java企業應用程序
- 15. PYTHONPATH不適用於GNU/Linux上的sudo(適用於root)
- 16. 適用於Java的工具/ API /框架基於Web的工作流程
- 17. 適用於Android的PDF API適用
- 18. API適用於iPhone
- 19. 適用於商業應用的PostgreSQL/Ruby
- 20. 適用於Java的Google API API日曆Feed
- 21. 哪個Emacs適用於Mac OS X?...適用於Windows?適用於Linux?
- 22. *適用於Eclipse的nix Shell編輯器
- 23. __LINE__等價於Linux shell
- 24. 適用於IPC的shmget linux的
- 25. Shell命令適用於命令行,但不適用於PHP exec
- 26. 適用於vStorage的VMWare API
- 27. 適用於J2ME的kSoap API
- 28. 適用於iPhone的Orkut API
- 29. 適用於iphone的FourSquare API
- 30. 適用於Android的YouTube API
什麼樣的工作? – xxpor 2012-03-27 05:10:54
就像你通過在Linux命令的末尾附加'&'提交的那些 – user837208 2012-03-27 05:12:55
那些不是作業,它們是在後臺運行的進程。 – xxpor 2012-03-27 05:18:11