Subkulit Bash

Subkulit Bash



Terkadang, Anda harus menjalankan satu atau lebih perintah atau skrip di latar belakang. Tugas ini dapat dilakukan dengan menulis semua perintah atau skrip ke dalam file skrip dan mengeksekusi file menggunakan ampersand (&) atau mengeksekusi perintah atau skrip ke dalam subkulit dari shell saat ini. Subkulit dapat digunakan untuk mengeksekusi banyak perintah atau skrip dengan menyertakan $() atau backticks (`). Metode penggunaan subkulit Bash ditunjukkan dalam tutorial ini.

Berbagai Contoh Subkulit

Berbagai cara mengeksekusi skrip di subkulit ditunjukkan di bagian tutorial ini.

Contoh 1: Jalankan Subkulit Menggunakan Kutipan Tunggal dan Kutipan Ganda

Buat file Bash dengan skrip berikut yang mencetak tanggal dan waktu saat ini. Selanjutnya, variabel $strVal dicetak dengan menyertakan skrip subkulit di dalam tanda kutip tunggal dan kutip ganda.







#!/bin/bash

#Cetak perintah `date` di subkulit

gema 'Hari ini adalah `tanggal` '

#Tentukan variabel string

strVal = 'Subkulit Bash'

#Cetak variabel dalam subkulit menggunakan tanda kutip tunggal

gema 'Output dari tanda kutip tunggal:' '$(gema $strVal)'

#Cetak variabel di subkulit menggunakan tanda kutip ganda

gema 'Output dari tanda kutip ganda:' ' $(gema $strVal) '

Output berikut muncul setelah mengeksekusi skrip. Skrip subkulit dicetak sebagai string saat diapit dengan tanda kutip tunggal. Skrip subkulit dijalankan saat diapit dengan tanda kutip ganda:





Contoh 2: Cari Semua File dari Ekstensi Tertentu Menggunakan Subkulit

Buat file Bash dengan skrip berikut yang menggunakan ekstensi file sebagai masukan dari pengguna. Selanjutnya, perintah 'ls' dijalankan di subkulit untuk mencari semua file dengan ekstensi tertentu.





#!/bin/bash

gema -N 'Masukkan nama ekstensi file:'

#Ambil nama ekstensi file yang akan dicari

membaca ext

#Periksa nilai masukan

jika [ [ $ext == '' ] ] ; Kemudian

#Cetak pesan kesalahan

gema 'Tidak ada perpanjangan yang diberikan.'

kalau tidak

gema 'Nama file dengan $ext perpanjangan:'

#Cetak semua nama file dengan ekstensi yang diberikan

gema ' $( echo `ls *.$ext` ) '

menjadi

Keluaran berikut muncul setelah mengeksekusi skrip dengan input 'txt'. Menurut output, ada tiga file teks di lokasi saat ini:



Keluaran berikut muncul setelah mengeksekusi skrip dengan nilai kosong:

Contoh 3: Jalankan Ekspresi Aritmatika di Subkulit

Buat file Bash dengan skrip berikut di mana variabel dengan nama yang sama digunakan di shell utama dan subkulit. Operasi aritmatika didefinisikan dalam shell utama dan subkulit.

#!/bin/bash

#Define variabel shell induk

nomor = 10

#Cetak hasilnya berdasarkan variabel shell induk

( ( hasil = $ nomor + 5 ) )

gema 'Jumlah dari $ nomor +5= $hasil '

#Buat variabel subkulit dengan nama yang sama dengan shell induk

( nomor = dua puluh ; ( ( hasil = $ nomor + 10 ) ) ; gema 'Jumlah dari $ nomor +5= $hasil ' )

#Cetak lagi hasilnya berdasarkan variabel shell induk

gema 'Jumlah dari $ nomor +5= $hasil '

Output berikut muncul setelah mengeksekusi skrip. Output pertama dan terakhir menunjukkan hasil dari shell utama. Output kedua menunjukkan hasil dari subkulit. Variabel dari shell utama tidak dimodifikasi oleh variabel dari subkulit:

Contoh 4: Jalankan Banyak Perintah di Subkulit

Buat file Bash dengan skrip berikut yang mengirimkan output dari perintah 'echo' ke dalam perintah 'sed' yang menggantikan nilai string yang cocok dengan string lain. Output dari perintah 'echo' adalah 'JavaScript'. Jadi, nilai ini dibandingkan dengan 'Java' dan 'JavaScript'. Jika kecocokan ditemukan, string yang cocok diganti dengan string “Type”.

#!/bin/bash

#Tentukan nilai string

strVal = 'JavaScript'

#Cetak nilai string asli

gema 'Nilai string: $strVal '

#Print nilai subkulit

gema -N 'Nilai subkulit:'

gema ' $(echo $strVal | sed 's|Java|Tipe JavaScript|') '

Output berikut muncul setelah menjalankan skrip. Menurut output, string 'Java' diganti dengan string 'Type'. Output dari subkulit adalah 'JavaScript TypeScript':


Kesimpulan

Satu atau lebih perintah atau skrip dapat dijalankan menggunakan subkulit tanpa memengaruhi shell utama. Tujuan penggunaan subkulit dijelaskan dalam tutorial ini menggunakan beberapa contoh. Berbagai jenis tugas seperti mencari file, menghitung jumlah angka, mengganti string, dll. Dilakukan oleh subkulit dalam contoh yang diberikan. Konsep penggunaan subkulit didemonstrasikan dengan benar dan pengguna baru Bash sekarang dapat menggunakan subkulit setelah membaca tutorial ini.