จะหลีกเลี่ยงการป้อนไฟล์อินพุตด้วยตนเองได้อย่างไรเมื่อเรียกใช้ไฟล์ .exe จาก Matlab

ฉันกำลังใช้ไฟล์ trans.exe ซึ่งเมื่อรันจะถามถึงไฟล์พารามิเตอร์ (=input) ถ้าฉันรัน trans.exe โดยใช้ Matlab ฉันจะให้ไฟล์พารามิเตอร์ภายในโปรแกรมโดยตรงโดยไม่ได้รับแจ้งให้ Matlab พิมพ์ด้วยตนเองทุกครั้งที่รัน trans.exe ได้อย่างไร


person Community    schedule 09.10.2010    source แหล่งที่มา


คำตอบ (2)


หากไฟล์ปฏิบัติการของคุณไม่มีความสามารถในการยอมรับพารามิเตอร์บรรทัดคำสั่งตัวเลือกเดียวของคุณคือการเรียกใช้การที่ไปป์สิ่งต่าง ๆ ไปยัง stdin ของไฟล์เรียกทำงานของคุณ (ภายใต้ Linux สิ่งนี้จะคล้ายกับ !echo "blah blah blah" | my_executable) ฉันไม่รู้ว่าเทคนิคนี้ใช้ได้กับ Matlab หรือไม่

person Oliver Charlesworth    schedule 09.10.2010

system('"C:\path_name\trans.exe" < "C:\path_name\input_trans_parameter_file.txt"');

บรรทัดคำสั่งต่อไปนี้ที่ใช้ในฟังก์ชัน system ข้างต้นจะใช้ชื่อของไฟล์อินพุตที่จัดเก็บไว้ใน input_trans_parameter_file.txt โดยตรง

‹ "C:\path_name\input_trans_parameter_file.txt"

person Community    schedule 10.10.2010