Apakah ada cara untuk membuat variabel bash dan menetapkan nilai-nilai melalui loop?
Sesuatu di sepanjang garis:
#!/bin/bash
c=0
for file in $( ls ); do
var"$c"="$file";
let c=$c+1;
done
EDIT: Terima kasih kepada @Costas dan @mdpc untuk menunjukkan ini akan menjadi alternatif yang buruk untuk daftar; pertanyaannya hanya teoretis.
1
CATATAN: Perlu diketahui bahwa pengaturan Anda akan mengubah / memodifikasi / menetapkan variabel hanya dalam proses saat ini dan BUKAN proses induk jika Anda menjalankan ini sebagai perintah. Anda dapat sumber file menggunakan '.' perintah (EX:. new_vars) untuk membuat ini terjadi dalam proses saat ini.
—
mdpc
Oke, tetapi cara di atas tidak benar-benar berjalan;
—
toxefa
var"$c"
istirahat itu. Jawaban @Costas menunjukkan bagaimana cara menetapkan beberapa nilai ke variabel daftar tunggal - Saya hanya bertanya secara teoritis apakah variabel sebenarnya dapat dihasilkan dengan satu loop.
Hmmm ... kenapa begitu rumit, hanya menggunakan variabel baru membuatnya tanpa gembar-gembor.
—
mdpc