Estoy ejecutando Ubuntu Linux. Supongamos que hay un programa llamado myprogram
. Este programa solicita al usuario que ingrese; específicamente, el usuario debe escribir un número entero cuando se le solicite y presionar Enter. Me gustaría automatizar este proceso usando un script bash. En particular, me gustaría ejecutar myprogram
, digamos, 100 veces (usando un contador i
que va de 1
a 100
). En cada ejecución de myprogram
, me gustaría ingresar el valor actual de i
cuando se me solicite.
(Por cierto, myprogram
toma opciones / modificadores -options
, todos los cuales serán constantes y, por lo tanto, se especificarán dentro del script bash).
Un esqueleto incompleto de este script bash podría ser:
#!/bin/bash
for i in {1..100}
do
myprogram -options
done
Ahora me gustaría modificar el código anterior para que i
se ingrese el valor actual de cuando el programa lo solicite. ¿Cuál es la mejor manera de hacer esto?
El sitio web del software que estoy usando sugiere usarlo <<EOF
al final de la myprogram -options
línea. Creo que esto le dice a bash que mire el "final del archivo" para la entrada a usar. Pero, ¿qué pasa si no quiero colocar la entrada al final del archivo? ¿Qué pasa si me gustaría ponerlo inmediatamente después de <<
o <
?
La razón es que las cosas se pondrán más complicadas. Por ejemplo, puedo introducir un contador entero j
que cambia de una manera no lineal, no secuencial. Entonces me gustaría alimentar el valor actual de j
a myprogram
en cada iteración, pero el valor de j
puede cambiar entre la llamada myprogram -options
y el final del archivo EOF
.
¿Tienes alguna sugerencia?