簡體   English   中英

重定向Java和Javac輸出

[英]Redirecting java and javac output

我正在嘗試編寫安裝(bash)腳本,在該腳本中,我需要檢查用戶是否安裝了Java 1.8。

這樣做的明顯方法是致電

javac -version | grep 1.8

,但出於某些奇怪的原因,javac(和java)的-version輸出無法重定向-既不能通過|,>或>>進行重定向-在第一種情況下,第二個程序無法獲取任何輸入,在第二和第三個情況下,執行該命令后,輸出文件為空。 我嘗試在三台不同的計算機上進行檢查,結果在每台計算機上都相同。

是什么原因造成的? 還有其他方法可以檢查Java版本嗎?

似乎輸出已發送到STDERR 嘗試這個:

javac -version 2>&1

這會將STDERR的輸出重定向到STDOUT 現在,您應該可以通過管道傳遞命令了。

如果僅要將其重定向到文件,只需將&1替換為文件名,因此:

javac -version 2>out

您可以使用此工具簡單地檢查Java版本: http : //www.java.com/en/download/installed.jsp

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM