2014-01-14 113 views
1

我正在考慮將從命令行運行的Java結果傳遞到命令行變量。但經過多次搜索後,我只看到運行該命令的Runtime類。將java結果傳遞到命令行

因此,我的問題,是有什麼我可以做的就是Java結果進入命令行。

平臺當然是Windows。

+2

這並不完全清楚。在大多數情況下,stdout被引導到你的shell /控制檯。這不是你所看到的嗎? –

+0

命令行變量?你的意思是將String [] args數組傳遞給其他對象的main?的[我如何設置從Java環境變量?] – duffymo

+0

可能重複(http://stackoverflow.com/questions/318239/how-do-i-set-environment-variables-from-java) – MariuszS

回答

3

只有2種方式中的任何程序(Java或其它方式)可以將結果發送回「命令行」:

1)退出代碼

2)捕獲由程序輸出的字符串。

#1可以在Java中使用System.exit(或see a couple more options here)來完成。

#2由shell完成。在Unix系統中,通常使用反引號或$():

OUTPUT=`java app.class` 

在Windows PowerShell中,這樣做

$result = & java app.class 2>&1 | Out-String 
+0

Java有'void main',所以只有#System.exit()'。我認爲#2是OP的意思,但這與Java –

+0

ouch!無關!對,Java有void main。謝謝!編輯。 – theglauber