2017-04-02 179 views
0

我已經搜索過類似的問題,但儘管在那裏有很多類似的標題,但都有不同的要求。Java與Windows cmd進行交互

在我的情況下,我希望我的java程序通過編寫命令和讀取響應與終端(Windows)進行交互。

我已經找到了類ProcessBuilder,但似乎並沒有那麼做我想做的

我」 M尋找的東西如此:

  1. 在某個給定的位置開始cmd(如C:\Users\federico
  2. 發出命令(dircd desktop);這不應該打開命令提示符窗口
  3. 讀取命令可能會導致

等任何輸出,最多從程序用戶的退出。

+2

這是批處理文件的用途。 Java的功能在所有這些方面發揮了什麼作用。 –

+3

你想「數字」一個命令?那是什麼意思? – ajb

+0

@NickZiebert我不希望只執行一個cmd命令,而是閱讀cmd的回答(例如:我把我的批處理這些指令:1:cd C:/ Users/federico 2:dir。我想要的是我的程序讀取哪些是子目錄,我不希望cmd與該cubDirectory打開 – fedi98

回答

1

我懷疑你根本不知道這個英文術語:你在尋找的是一種在OS中執行命令的方法,在我所知的每種編程語言中稱爲「exec」,其中包括Java :https://docs.oracle.com/javase/7/docs/api/java/lang/Runtime.html#exec(java.lang.String)

+0

我不認爲這是正確的。他提到'cd desktop'是他想給用戶的命令之一,你不能簡單地執行它。聽起來像他想寫他自己的等效於cmd.exe。 – ajb

+0

相當,但發出命令「CD桌面」本身並沒有做任何事情,並且*不像*「改變當前的工作目錄」一樣,所以代替其他細節,問題「我該如何運行一個命令「仍然是」你使用exec「 –

+0

但他沒有問」我該如何運行命令「。 – ajb