Saya menjalankan Ubuntu Linux. Misalkan ada program yang disebut myprogram. Program ini meminta input dari pengguna; khusus, pengguna harus mengetik bilangan bulat ketika diminta dan tekan Enter. Saya ingin mengotomatiskan proses ini menggunakan skrip bash. Secara khusus, saya ingin mengeksekusi myprogram, katakanlah, 100 kali (menggunakan penghitung iyang beralih dari 1ke 100). Pada setiap eksekusi myprogram, saya ingin memasukkan nilai saat ini iketika diminta.
(Omong-omong, myprogrammengambil opsi / switch -options, yang semuanya akan konstan dan dengan demikian ditentukan dalam skrip bash.)
Kerangka skrip bash yang tidak lengkap ini mungkin:
#!/bin/bash
for i in {1..100}
do
myprogram -options
done
Sekarang saya ingin memodifikasi kode di atas sehingga nilai saat iini dimasukkan ketika diminta oleh program. Apa cara terbaik untuk melakukan ini?
Situs web perangkat lunak yang saya gunakan menyarankan penggunaan <<EOFdi akhir myprogram -optionsbaris. Saya pikir ini memberitahu bash untuk melihat "akhir file" untuk input yang akan digunakan. Tetapi bagaimana jika saya tidak ingin menempatkan input di akhir file? Bagaimana jika saya ingin meletakkannya segera setelah <<atau <?
Alasannya adalah bahwa hal-hal akan menjadi lebih rumit. Sebagai contoh, saya dapat memperkenalkan penghitung bilangan bulat jyang berubah dalam beberapa cara non-linear, non-sekuensial. Saya kemudian ingin memberi makan nilai saat ini juntuk myprogrampada setiap iterasi, tetapi nilai jdapat berubah antara panggilan ke myprogram -optionsdan akhir file EOF.
Apakah Anda punya saran?