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 i
yang beralih dari 1
ke 100
). Pada setiap eksekusi myprogram
, saya ingin memasukkan nilai saat ini i
ketika diminta.
(Omong-omong, myprogram
mengambil 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 i
ini dimasukkan ketika diminta oleh program. Apa cara terbaik untuk melakukan ini?
Situs web perangkat lunak yang saya gunakan menyarankan penggunaan <<EOF
di akhir myprogram -options
baris. 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 j
yang berubah dalam beberapa cara non-linear, non-sekuensial. Saya kemudian ingin memberi makan nilai saat ini j
untuk myprogram
pada setiap iterasi, tetapi nilai j
dapat berubah antara panggilan ke myprogram -options
dan akhir file EOF
.
Apakah Anda punya saran?