ทำให้โปรแกรมอ่านเป็นครั้งแรกจากไปป์แล้วจากคีย์บอร์ด


17

interactiveพิจารณาโปรแกรมโต้ตอบ ฉันต้องเรียกใช้โปรแกรมนี้บ่อยครั้งและทุกครั้งที่ฉันเรียกใช้คำสั่งแรก ๆ นั้นเหมือนกัน เห็นได้ชัดว่าการพิมพ์คำสั่งเหล่านั้นซ้ำแล้วซ้ำอีกเป็นความเจ็บปวด ฉันได้เก็บคำสั่งเหล่านั้น (คั่นด้วยการขึ้นบรรทัดใหม่) cmdในแฟ้ม ตอนนี้ฉันสามารถทำได้cat cmd | interactiveเพื่อเรียกใช้คำสั่ง ปัญหาคือเมื่อcmdอ่านเสร็จแล้วจะinteractiveได้รับ EOF และออก

สิ่งที่ฉันต้องการทำคือinteractiveอ่านจากไปป์ก่อน (เห็นได้ชัดว่าinteractive < cmdยอมรับได้) และเมื่อได้รับ EOF ให้เริ่มอ่านจากแป้นพิมพ์แทน

คำตอบ:


21

เพียงขอcatให้เชื่อมไฟล์นั้นด้วย stdin:

cat cmd - | interactive

1
การแก้ปัญหาข้างต้นน่าจะดีที่สุด หากคุณใช้เดสก์ท็อป Gui ให้ดูที่ AutoKey ด้วย มันจะช่วยให้คุณสร้างมาโครที่สามารถทำอะไรก็ได้เกือบทุกอย่างจากคีย์บอร์ด มันจะยุ่งยากเล็กน้อยหากคุณต้องรอให้สิ่งต่าง ๆ เกิดขึ้นหรือต้องรับข้อมูลจากหน้าจอ แต่ถ้าคุณรู้จัก python (ภาษาที่ใช้ในการเขียนรหัสมาโคร) ท้องฟ้ามีขีด จำกัด
Joe
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.