Tutorial menggunakan perintah dasar untuk membuka file (CentOS Bash Linux)
Daftar Isi:
- Membaca File Baris Dengan Sintaks Baris
- Membaca File Contoh Baris demi Baris
- Metode Membaca File Alternatif
- Menggunakan Substitusi Proses
- Menggunakan String Di Sini
- Menggunakan deskriptor File
- Kesimpulan
Saat menulis skrip Bash, kadang-kadang Anda akan menemukan diri Anda dalam situasi di mana Anda perlu membaca file baris demi baris. Misalnya, Anda mungkin memiliki file teks yang berisi data yang harus diproses oleh skrip.
Dalam tutorial ini, kita akan membahas cara membaca file baris demi baris di Bash.
Membaca File Baris Dengan Sintaks Baris
Sintaks yang paling umum untuk membaca file baris demi baris adalah sebagai berikut:
while IFS= read -r line do echo "$line" done < input_file
atau versi single-line yang setara:
while IFS= read -r line; do echo $line; done < input_file
Bagaimana cara kerjanya?
File input (
input_file
) adalah nama file yang ingin Anda buka untuk dibaca oleh perintah
read
. Perintah
read
membaca file baris demi baris, menugaskan setiap baris ke variabel
line
. Setelah semua baris diproses, loop sementara akan berakhir. Pemisah bidang internal (
IFS
) diatur ke string nol untuk mempertahankan spasi spasi awal dan akhir yang merupakan perilaku default dari perintah
read
.
Membaca File Contoh Baris demi Baris
Mari kita lihat contoh berikut ini. Misalkan, kami memiliki file bernama
distros.txt
berisi daftar beberapa distribusi Linux paling populer dan manajer paket mereka dipisahkan dengan koma (
,
):
Ubuntu, apt Debian, apt CentOS, yum Arch Linux, pacman Fedora, dnf
Untuk membaca file baris demi baris Anda akan menjalankan kode berikut di terminal Anda:
while IFS= read -r line do echo "$line" done < distros.txt
Kode akan membaca file per baris, menetapkan setiap baris ke suatu variabel, dan menggemakan variabel. Dasarnya Anda akan melihat output yang sama seolah-olah Anda akan menampilkan konten file menggunakan perintah cat.
Bagaimana jika Anda ingin mencetak hanya distribusi yang menggunakan apt? Salah satu caranya adalah dengan menggunakan pernyataan if dan memeriksa apakah baris tersebut berisi substring apt:
while IFS= read -r line do if]; then echo "$line" fi done < distros.txt
Ubuntu, apt Debian, apt
Saat membaca file baris demi baris, Anda juga dapat melewatkan lebih dari satu variabel ke perintah baca yang akan membagi baris menjadi bidang berdasarkan
IFS
. Bidang pertama ditugaskan ke variabel pertama, variabel kedua hingga variabel kedua, dan seterusnya. Jika ada lebih banyak bidang daripada variabel, bidang sisa ditugaskan ke variabel terakhir.
Dalam contoh berikut, kami menetapkan IFS ke koma (
,
) dan meneruskan dua variabel
distro
dan
pm
ke perintah baca. Segala sesuatu dari awal baris hingga koma pertama akan ditugaskan ke variabel pertama (
distro
) dan sisa baris akan ditugaskan ke variabel kedua (
pm
):
while IFS=, read -r distro pm do echo "$pm" is the package manager for "$distro" done < distros.txt
apt is the package manager for Ubuntu apt is the package manager for Debian yum is the package manager for CentOS pacman is the package manager for Arch Linux dnf is the package manager for Fedora
Metode Membaca File Alternatif
Menggunakan Substitusi Proses
Substitusi proses memungkinkan Anda untuk melewatkan output dari perintah sebagai nama file:
while IFS= read -r line do echo "$line" done < <(cat input_file)
Menggunakan String Di Sini
String di sini adalah varian dari dokumen Here. String
(cat input_file)
akan menjaga baris baru:
while IFS= read -r line do echo "$line" done <<< $(cat input_file)
Menggunakan deskriptor File
Anda juga dapat memberikan input ke loop menggunakan deskriptor file:
while IFS= read -r -u9 line do echo "$line" done 9< input_file
Ketika bekerja dengan deskriptor file, gunakan angka antara 4 dan 9 untuk menghindari konflik dengan deskriptor file internal shell.
Kesimpulan
Di Bash, kita bisa membaca file baris demi baris dengan memberikan nama file sebagai input untuk loop baca sementara.
terminal bashSurvei: Membaca buku bacaan, mencetak membaca penurunan
Lebih banyak orang Amerika membaca e-buku pada tahun lalu, dengan 23 persen dari mereka yang berusia 16 tahun dan over going digital, dibandingkan dengan 16 persen dalam survei sebelumnya untuk Pew Internet & American Life Project, yang merilis hasil terbaru pada pembaca ebook Kamis.
Akses File Monitor menyimpan jejak siapa yang membaca atau mengubah file
SoftPerfect Akses File Monitor untuk monitor Windows akses ke file Anda & memberikan sejarah rinci tentang siapa yang membaca, menghapus, memindahkan, menulis atau mengubah file.
Cara membaca ebook pdf, chm, dan file teks di psp
Pelajari Cara Membaca Ebook PDF, CHM, dan File Teks di PSP.