ในเซิร์ฟเวอร์ CentOS 7 ฉันต้องการรับรายการหน่วยที่สามารถเลือกได้ซึ่งjournalctl
สามารถสร้างบันทึกได้ ฉันจะเปลี่ยนรหัสต่อไปนี้เพื่อทำสิ่งนี้ได้อย่างไร
journalctl --output=json-pretty | grep -f UNIT | sort -u
ในเทอร์มินัล CentOS 7 โค้ดด้านบนจะสร้างgrep: UNIT: No such file or directory
ขึ้น
แก้ไข:
โปรแกรม Java ต่อไปนี้ถูกยกเลิกโดยไม่ต้องพิมพ์ผลลัพธ์ใด ๆ จาก grep ที่ต้องการ ฉันจะเปลี่ยนสิ่งต่าง ๆ เพื่อให้โปรแกรมจาวาทำงานได้นอกเหนือจากรุ่นเทอร์มินัลได้อย่างไร
String s;
Process p;
String[] cmd = {"journalctl --output=json-pretty ","grep UNIT ","sort -u"};
try {
p = Runtime.getRuntime().exec(cmd);
BufferedReader br = new BufferedReader(new InputStreamReader(p.getInputStream()));
while ((s = br.readLine()) != null)
System.out.println("line: " + s);
p.waitFor();
System.out.println ("exit: " + p.exitValue()+", "+p.getErrorStream());
BufferedReader br2 = new BufferedReader(new InputStreamReader(p.getErrorStream()));
while ((s = br2.readLine()) != null)
System.out.println("error line: " + s);
p.waitFor();
p.destroy();
} catch (Exception e) {}
grep -F