Bagaimana saya dapat menjalankan banyak perintah dalam satu loop?
Mencetak nama berkas berguna untuk debug, namun tujuan utama loop adalah memproses banyak berkas. Loop berikut mencetak baris kedua dari setiap berkas data:
for file in seasonal/*.csv; do head -n 2 $file | tail -n 1; done
Strukturnya sama seperti loop lain yang sudah Anda lihat: perbedaannya hanya pada badan loop yang berupa pipeline dari dua perintah, bukan satu perintah tunggal.
Latihan ini adalah bagian dari kursus
Pengantar Shell
Petunjuk latihan
Tulis sebuah loop yang mencetak entri terakhir dari Juli 2017 (2017-07) di setiap berkas seasonal. Hasilnya harus mirip dengan:
grep 2017-07 seasonal/winter.csv | tail -n 1
namun diterapkan pada setiap berkas seasonal secara terpisah. Gunakan file sebagai nama variabel loop, dan ingat untuk melakukan loop melalui daftar berkas seasonal/*.csv (bukan 'seasonal/winter.csv' seperti pada contoh).
Latihan interaktif praktis
Ubah teori menjadi tindakan dengan salah satu latihan interaktif kami.
Mulai berolahraga