Memahami dan Menulis 'Variabel Linux' di Shell Scripting - Bagian 10
- 2957
- 950
- Karl O'Connell DDS
Bahasa skrip shell linux selalu menjadi topik hangat dan akan selalu di masa depan. Bahasa scripting shell ajaib dan sangat mudah untuk melakukan program dalam bahasa skrip seperti dalam bahasa lain. Namun, itu membutuhkan pengetahuan mendalam tentang apa yang kami lakukan dan apa hasilnya diharapkan.
Memahami variabel dalam skrip shellSemua artikel skrip shell yang telah kami tulis untuk pembaca kami sangat dihargai termasuk yang terakhir "wawasan variabel linux". Kami memperluas artikel terakhir ke tingkat yang baru.
Atribut variabel
Setiap variabel di lingkungan Linux memiliki opsi tertentu, dan itu disebut 'atribut'. Opsi atau atribut ini dapat diputar Pada Dan Mati, bila diperlukan sesuai dengan situasi menggunakan perintah "Deklarasi".
Contoh atribut variabel menggunakan sakelar katakan '-Saya'yang akan menyalakan atribut integer untuk variabel yang sesuai. Bahkan jika nilai non-numerik diteruskan untuk beralih '-Saya'Itu tidak akan melempar pesan kesalahan dan output'0'Sebagai interpretasi integer. Di sini menjadi lebih jelas dari contoh di bawah ini.
Mendeklarasikan variabel integer, tagihan = 121
[Email Dilindungi]: ~ $ Declare -i Bill = 121
Printf nilai tagihan variabel.
[Email Dilindungi]: ~ $ printf "%d \ n" "$ bill" 121
Biarkan nilai variabel menjadi string. RUU variabel sudah dinyatakan, tidak perlu menyatakannya kedua kalinya. Ubah saja nilai variabel sebagai.
[Email dilindungi]: ~ $ bill = tecmint
Sekarang, sekali lagi printf nilai tagihan variabel.
[email dilindungi]: ~ $ printf "%d \ n" "$ bill" 0
Melihat '0'Di tempat pesan kesalahan.
Sekarang, pertanyaannya adalah, bagaimana mengetahui atribut variabel yang sudah dinyatakan?
[Email Dilindungi]: ~ $ DECLARE -P Bill Deklarasi -i Bill = "121"
Di sini, a -P (Stand For Print) sakelar datang untuk menyelamatkan.
Sekali lagi, apa yang harus saya lakukan untuk mematikan atribut variabel?
Untuk beralih Mati Atribut variabel yang kita butuhkan adalah menempatkan a + (plus) menandatangani tepat sebelum sakelar. Di sini lebih jelas dari contoh di bawah ini.
Mengalihkan Mati Atribut integer untuk variabel di atas.
[Email Dilindungi]: ~ $ Declare +I Bill
Periksa nilai variabel.
[Email Dilindungi]: ~ $ printf "%d \ n" "$ bill" Bash: printf: Bill: nomor tidak valid 0
Sekarang cetak nilai variabel menggunakan string sakelar.
[email dilindungi]: ~ $ printf "%s \ n" "$ bill" tecmint
Di sini dalam contoh di atas, Bash tidak dapat menilai nilai non-numerik sebagai kesalahan, namun printf adalah menafsirkan, apa yang bisa menjadi angka dan apa yang tidak mungkin terjadi.
Variabel baca saja
Anda mungkin pernah mendengar hanya membaca memori (ROM), tapi apa itu variabel baca saja? Apakah ada kesamaan dengan rom?
Variabel baca-saja seperti memori read-only adalah sesuatu yang nilainya tidak dapat diubah setelah ditetapkan. Oleh karena itu disebut read-only. Anda tidak dapat menulis, mengedit atau memodifikasi nilai baru untuk variabel itu. Berikut adalah ilustrasi menggunakan contoh.
Decalre A Baca saja (-R) Nama variabel, nilainya adalah “tecmint.com ".
[Email Dilindungi]: ~ $ Declare -r name = "TecMint.com "
Printf nilai variabel yang dinyatakan di atas.
[Email Dilindungi]: ~ $ printf "%s \ n" "$ name" tecmint.com
Cobalah untuk mengubah nilai variabel.
[Email Dilindungi]: ~ $ DECLARE -R NAME = "AVISHEK" BASH: Deklarasikan: Nama: Readonly Variable
Seperti dibahas di atas atribut variabel baca-saja dapat diubah menggunakan '+' tanda.
Variabel ekspor di linux
Semua variabel shell yang dinyatakan dalam skrip shell tersedia sampai skrip berjalan. Di luar skrip variabel dari skrip tidak ada. Proses membuat variabel yang tersedia di luar skrip disebut variabel ekspor.
Variabel dapat diekspor di luar shell menggunakan sakelar menyatakan -x (Ekspor), yang mengakui shell apa yang ingin Anda ekspor. Sakelar ekspor menyatakan dapat digunakan sebagai.
[Email Dilindungi]: ~ $ DECLARE -X VARIABLE = "CONSTANT_VALUE"
Semua perubahan yang dilakukan pada variabel saat skrip berjalan, hilang ketika variabel diekspor di luar skrip. Variabel ekspor sangat penting dalam skrip shell.
Kami ingin memiliki variabel yang harus dibaca saja dan tersedia di luar skrip, kami perlu menggunakan sakelar -R dan beralih -X pada saat yang sama.
[Email Dilindungi]: ~ $ DECLARE -RX VARIABLE = "CONSTANT_VALUE"
Variabel Lingkungan
Variabel yang dibagikan antara program dan program yang melaksanakannya. Variabel lingkungan dapat diekspor tetapi atribut tidak dapat ditetapkan untuk itu.
Memahami teori di atas secara praktis. Di sini kami memiliki dua skrip 0.SH Dan 1.SH.
# 0.SH #!/bin/bash mendeklarasikan -rx nama = tecmint bash 0.SH EXIT 0
Dan skrip kedua adalah.
# 1.SH #!/bin/bash printf "%s \ n" "$ name" name = tecmint.com printf "%s \ n" "$ name" Exit 0
Di sini apa yang sedang terjadi, adalah variabel (nama) dinyatakan hanya dibaca dan diekspor dan segera setelah skrip kedua itu dipanggil.
Skrip kedua baru saja mencetak variabel dari skrip pertama yang diekspor pada yang pertama printf penyataan. Dalam pernyataan printf kedua itu menunjukkan nilai baru yang ditetapkan untuk variabel 'nama'.
Tidak perlu khawatir, bahwa variabelnya hanya baca, bagaimana bisa dipindahkan. Tidakkah Anda ingat bahwa “Semua perubahan yang dilakukan pada variabel saat skrip berjalan, hilang ketika variabel diekspor di luar skrip."
Referensi
Itu menyatakan Perintah memungkinkan semua sakelar di bawah ini bersama dengan kombinasinya.
- -A : Menyatakan array.
- -F : Fungsi dan definisi tampilan.
- -F : Tampilkan nama fungsi.
- -R : Mendeklarasikan variabel sebagai hanya baca.
- -X : Mendeklarasikan variabel sebagai ekspor.
- -SAYA : Mendeklarasikan variabel sebagai bilangan bulat.
Itu saja untuk saat ini. Dalam artikel berikutnya kita akan membahas cara -cara mengganti variabel menggunakan 'evaluasi'Perintah dan variabel yang sudah didefinisikan dalam bash sebelum menutup topik ini. Semoga Anda menikmati perjalanan Anda menuju skrip yang mendalam. Sampai kemudian tetap disini dan terhubung ke Tecmint.com.
- « Membuat host virtual, menghasilkan sertifikat & kunci SSL dan mengaktifkan CGI Gateway di Gentoo Linux
- Menginstal GUI (desktop kayu manis) dan perangkat lunak dasar di Arch Linux »