public class Test200 {
public static void main (String args []) {
System.out.println("David");
System.out.println("Peter");
}
output=$(java Test200)
echo $output
我得到的這兩個值是大衛·彼得。假設我只想在shell腳本中返回「David」?任何線索?謝謝。
public class Test200 {
public static void main (String args []) {
System.out.println("David");
System.out.println("Peter");
}
output=$(java Test200)
echo $output
我得到的這兩個值是大衛·彼得。假設我只想在shell腳本中返回「David」?任何線索?謝謝。
您不返回"David"
和"Peter"
,您將它們打印到STDOUT
。所以如果你只想打印其中的一個,只需刪除其他println
電話。
您只能將整數值返回給shell。這由System.exit(status)
完成。
嘗試使用grep
命令,使其將獨自返回預期值的多個值使用egrep
output=$(java Test200)
改用
output=$(java Test200 | grep 'David')
但我沒有測試此代碼,它應該管用。
或試試這個
java Test200 >> outfile
所有的SYSOUT將重定向到outfile在該基地,你可以做TE運行外部腳本。
但是現在我希望從java返回一個sql錯誤代碼到shell,所以我只需要代碼:System.exit(sql error code)? – crchin 2013-04-10 07:13:06