Pemrograman BASH

Cara Menggunakan $IFS di Bash?

Cara Menggunakan $IFS di Bash?
Dalam skrip, kita harus memecah data string karena berbagai alasan. Split adalah fitur terintegrasi dalam banyak bahasa komputer yang membagi setiap string data menjadi berbagai bagian. Namun, bash tidak memiliki fitur bawaan untuk memisahkan string. Untuk memecahkan nilai string apa pun, ada banyak pembatas tunggal dan majemuk yang akan digunakan. Variabel IFS (Pemisah Bidang Internal) sedang digunakan untuk menentukan pembatas tertentu untuk pembagian string. Dalam panduan ini, Anda akan mempelajari cara menggunakan berbagai metode untuk mengilustrasikan proses pemecahan nilai string di bash menggunakan $IFS.

Prasyarat

Pastikan Anda telah menginstal dan mengonfigurasi sistem berbasis Linux. Kami akan mengerjakan Ubuntu 20.04 sistem Linux. Masuk dari pengguna akun Ubuntu Anda untuk mulai bekerja di IFS. Akan lebih baik jika Anda masuk dari akun pengguna root Anda. Setelah masuk, luncurkan terminal baris perintah di sistem Anda dari area Aktivitas.

Contoh 01: IFS Membagi String Menggunakan Spasi sebagai Nilai

Untuk contoh pertama kami, kami akan memahami konsep pemisahan string di bash saat menggunakan spasi sebagai nilai pembatas menggunakan variabel IFS. Pertama, kita harus membuat file bash di sistem kita. Kami dapat membuat file baru di sistem Linux kami menggunakan perintah 'sentuh'. Seperti yang ditunjukkan di bawah ini, kami telah membuat file bash 'file1.sh' menggunakan instruksi 'sentuh':

$ sentuh file1.SH

Buka direktori Home sistem Linux Anda menggunakan ikon folder yang ditampilkan di sudut kiri Ubuntu 20.04 desktop. Anda akan menemukan file bash yang baru dibuat "file1".sh” di dalamnya. Buka file "file1".sh” dan ketik skrip di bawah ini. Pertama, kita telah mendefinisikan sebuah string bernama “str” dengan beberapa nilai string di dalamnya. Kemudian, kami mendefinisikan variabel pembatas IFS sebagai variabel yang memiliki ruang sebagai nilainya. Setelah itu, kita menggunakan statemen read untuk menyimpan dan membaca data split ke dalam array “strarr” menggunakan flag “-a”. Pernyataan 'echo' digunakan untuk mencetak sebaris string bersama dengan jumlah total kata dari array menggunakan "$#strarr[*]". Loop “for” digunakan untuk mencetak nilai array dalam bentuk split menggunakan variabel “var”. Garis miring terbalik “\n” telah digunakan dalam garis cetak bersama dengan variabel “var” untuk memberikan jeda satu baris setelah setiap nilai array. Simpan skrip menggunakan tombol "Ctrl + S" dan tutup file untuk melanjutkan lebih lanjut.

Kembalilah ke sisi terminal. Sekarang, kita akan memeriksa output dari kode di atas. Untuk ini, kita akan menggunakan perintah 'bash' bersama dengan nama file "file1".sh" untuk menjalankannya yang ditunjukkan di bawah ini. Pertama, itu menampilkan baris yang disebutkan dalam pernyataan "gema" bersama dengan jumlah kata dari sebuah array. Setelah itu, ia menampilkan semua nilai array menggunakan loop "untuk" yang dibagi oleh IFS.

$ file bash1.SH

Contoh 02: IFS Membagi String menggunakan Karakter sebagai Nilai

Dalam contoh yang disebutkan di atas, Anda telah melihat cara membagi variabel string menjadi beberapa bagian saat menggunakan spasi sebagai pembatas IFS. Sekarang, kita akan menggunakan karakter untuk membagi string menggunakan pembatas IFS. Buka terminal perintah Anda dan buat file bash baru "file2".sh" di direktori home Anda dari sistem Linux menggunakan perintah "touch" sebagai berikut:

$ sentuh file2.SH

Buka direktori home sistem Linux Anda. Anda akan menemukan file yang baru Anda buat di dalamnya. Buka file yang baru Anda buat dan tulis kode bash yang disajikan di bawah ini. Pada baris 3, kami telah memulai pernyataan "gema" untuk mencetak baris. Baris berikutnya membaca input yang diberikan oleh pengguna di terminal menggunakan kata kunci ”baca”. Selanjutnya, kami mendefinisikan pembatas "IFS" dan menetapkan koma "," sebagai nilai karakternya. Pernyataan "baca" lainnya telah ditentukan untuk membaca dan menyimpan nilai pemisahan koma dari string yang dimasukkan oleh pengguna ke array "strarr". Akhirnya, kami telah memulai tiga pernyataan gema untuk mencetak nilai split yang dipisahkan koma sebagai variabel seperti yang ditunjukkan pada gambar. Simpan dan tutup file ini.

Sekarang, kita harus menjalankan file yang disimpan ini. Jalankan perintah bash yang ditunjukkan di bawah ini diikuti dengan nama file di terminal untuk melakukannya. Anda harus menambahkan beberapa nilai string yang harus mengandung koma "," di dalam nilai, dan tekan tombol Enter. Sekarang data Anda telah disimpan ke dalam array "strarr". Tiga baris terakhir menunjukkan output dari pernyataan "gema". Anda dapat melihat, setiap teks sebelum dan sesudah koma telah digunakan sebagai nilai terpisah.

$ file bash2.SH

Contoh 03: IFS Split String

Kami telah melakukan kedua contoh sebelumnya dalam file bash. Kami sekarang akan memiliki ilustrasi menggunakan "IFS" tanpa membuat file bash. Buka shell perintah Anda untuk melakukannya. Pertama, kita perlu membuat string "var" dengan nilai string di dalamnya. String ini berisi koma setelah setiap kata.

$ var="Hai, saya, saya, 25, tahun, tua.”

Selanjutnya, inisialisasi variabel 'IFS' dengan karakter koma sebagai nilai pembatas.

$IFS=,

Setelah itu, kami menggunakan loop “for” untuk mencari setiap kata dari variabel “var” yang dipisahkan oleh koma pembatas IFS dan mencetaknya menggunakan pernyataan “echo”.

$ untuk saya di $var
> lakukan
> gema [$i]
>Selesai

Anda akan memiliki output di bawah ini. Ini akan menampilkan setiap kata dari variabel string "var" di baris baru karena koma pembatas "," digunakan sebagai karakter terpisah.

Kesimpulan:

Dalam panduan ini, Anda telah mempelajari berbagai metode untuk membagi nilai input dalam bash, mis.g., dengan spasi atau dengan karakter. Kami berharap ilustrasi yang disebutkan dalam panduan tutorial ini akan membantu Anda memutuskan setiap string menggunakan pembatas IFS.

Tambahkan gerakan Mouse ke Windows 10 menggunakan alat gratis ini
Dalam beberapa tahun terakhir, komputer dan sistem operasi telah berkembang pesat. Ada saat ketika pengguna harus menggunakan perintah untuk menavigas...
Kontrol & kelola gerakan mouse di antara beberapa monitor di Windows 10
Manajer Mouse Tampilan Ganda memungkinkan Anda mengontrol & mengonfigurasi gerakan mouse di antara beberapa monitor, dengan memperlambat gerakannya di...
WinMouse memungkinkan Anda menyesuaikan & meningkatkan gerakan penunjuk tetikus di PC Windows
Jika Anda ingin meningkatkan fungsi default penunjuk tetikus Anda, gunakan freeware WinMouse. Ini menambahkan lebih banyak fitur untuk membantu Anda m...