ฉันมักจะต้องการดึงข้อมูลสตริงที่ค่อนข้างสั้น (อาจมีหลายบรรทัด) ไปยังโปรแกรม commandline ซึ่งยอมรับเฉพาะอินพุตจากไฟล์ (เช่น wdiff) ในรูปแบบซ้ำ ๆ แน่ใจว่าฉันสามารถสร้างไฟล์ชั่วคราวอย่างน้อยหนึ่งไฟล์บันทึกสตริงที่นั่นและรันคำสั่งด้วยชื่อไฟล์เป็นพารามิเตอร์ แต่ดูเหมือนว่าฉันว่าขั้นตอนนี้จะไม่มีประสิทธิภาพสูงถ้าข้อมูลถูกเขียนลงดิสก์จริงและอาจเป็นอันตรายต่อดิสก์ได้มากกว่าที่จำเป็นถ้าฉันทำซ้ำขั้นตอนนี้หลายครั้งเช่นถ้าฉันต้องการป้อนข้อความบรรทัดเดียวแบบยาว ไฟล์เพื่อ wdiff มีวิธีแนะนำให้หลีกเลี่ยงสิ่งนี้โดยใช้ไฟล์หลอกเช่นไพพ์เพื่อเก็บข้อมูลชั่วคราวโดยไม่ต้องเขียนลงดิสก์ (หรือเขียนเฉพาะในกรณีที่เกินความยาววิกฤติ) โปรดทราบว่า wdiff รับสองอาร์กิวเมนต์และwdiff <"text"
.
xargs
จะทำให้บรรทัดอินพุตจากอาร์กิวเมนต์สตริงไฟล์สำหรับคำสั่ง แต่ฉันต้องการสิ่งที่ตรงกันข้าม
echo $data_are_here | dumb_program
?
xargs
หรือไม่