ฉันมีโปรแกรมบนรีโมตโฮสต์ซึ่งมีการดำเนินการที่ฉันต้องทำให้เป็นอัตโนมัติ คำสั่งรันโปรแกรมนั้นบนเครื่องเดียวกันจะมีลักษณะดังนี้:
/path/to/program -a file1.txt -b file2.txt
ในกรณีนี้file1.txtและfile2.txtใช้สำหรับสิ่งต่าง ๆ ทั้งหมดภายในโปรแกรมดังนั้นฉันจึงไม่สามารถcatรวมเข้าด้วยกันได้ อย่างไรก็ตามในกรณีของฉันfile1.txtและfile2.txtฉันต้องการส่งผ่านเข้าไปในโปรแกรมนั้นมีอยู่ในอุปกรณ์ของฉันเท่านั้นไม่ใช่บนโฮสต์ที่ฉันต้องใช้งานโปรแกรม ฉันรู้ว่าฉันสามารถฟีดอย่างน้อยหนึ่งไฟล์ผ่าน SSH โดยผ่านมันstdin:
cat file1.txt | ssh host.name /path/to/program -a /dev/stdin -b file2.txt
แต่เนื่องจากฉันไม่ได้รับอนุญาตให้จัดเก็บไฟล์บนโฮสต์ฉันจึงต้องหาวิธีที่จะไปที่file2.txtนั่นเช่นกัน ฉันคิดว่ามันอาจจะเป็นไปได้ผ่านการละเมิดของตัวแปรสภาพแวดล้อมและการใช้ความคิดสร้างสรรค์ของcatและsedกัน แต่ผมไม่ทราบว่าเครื่องมือที่ดีพอที่จะเข้าใจว่าฉันจะใช้พวกเขาเพื่อให้บรรลุนี้ เป็นไปได้หรือไม่และเป็นอย่างไร
catและsedไม่ใช่ทางออกที่นี่