Haga que el programa se lea primero desde la tubería, luego desde el teclado


17

Considere el programa interactivo interactive. Tengo que ejecutar este programa con bastante frecuencia, y cada vez que lo ejecuto, los primeros comandos son los mismos. Obviamente, tener que escribir esos comandos una y otra vez es un dolor. He recopilado esos comandos (separados por nuevas líneas) en el archivo cmd. Ahora puedo hacer cat cmd | interactivepara ejecutar los comandos. El problema es que una vez que cmdse ha leído completamente, interactiverecibe EOF y sale.

Lo que deseo hacer es interactiveleer primero desde la tubería (obviamente, interactive < cmdtambién es aceptable) y cuando se recibe EOF, comenzar a leer desde el teclado.

Respuestas:


21

Solo pide catconcatenar ese archivo con el stdin:

cat cmd - | interactive

1
La solución anterior es probablemente óptima. Si está utilizando un escritorio gui, también eche un vistazo a AutoKey. Le permitirá construir macros que pueden hacer casi cualquier cosa que pueda hacer desde un teclado. Se vuelve un poco complicado si tienes que esperar a que sucedan cosas, o si tienes que obtener datos de la pantalla, pero si conoces Python (el lenguaje en el que están codificadas sus macros), el cielo es el límite.
Joe
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.