BASH Programming

Bash Değişkenlerini Dışa Aktarma

Bash Değişkenlerini Dışa Aktarma
Bash kabuğundaki değişkenleri anlamak, Linux ile profesyonel bir şekilde çalışmak için çok önemlidir. Programlamanın yanı sıra Linux Profesyonel Enstitü Sertifikasyonu (LPIC) Seviye 1 [2] elde etmek için temel gereksinimlerden biridir.

Fahmida Yesmin [4] tarafından daha önce yayınlanan makale, size Bash değişkenlerine harika bir giriş sağlar. Burada bir adım daha ileri gidiyoruz ve Bash'te değişkenleri Linux sisteminizdeki diğer ortamlarda kullanabilmeniz için nasıl bildireceğinizi ve hangi yan etkileri hesaba katmanız gerektiğini açıklıyoruz.

Bash'in kısa bir açıklaması

Bash kabuğu ilk olarak 1989'da piyasaya sürüldü ve çoğu Linux dağıtımı için varsayılan oturum açma kabuğu olarak kullanıldı. Brian Fox, Bash'i bir UNIX kabuğu ve GNU Projesi için komut dili olarak Bourne kabuğunun yerine ücretsiz bir yazılım olarak yazdı. için bir kısaltmadır Bourne Yeniden Kabuk. Bash ile büyük ölçüde uyumludur ş ve Korn kabuğundan yararlı özellikler içerir ksh ve C kabuğu csh [6].

GNU işletim sistemi, bir sürümü de dahil olmak üzere başka kabuklar sağlarken csh, Bash, varsayılan etkileşimli kabuktur. Taşınabilirlik düşünülerek tasarlanmıştır ve şu anda UNIX'in hemen hemen her sürümünde ve diğer işletim sistemlerinde çalışır [9].

Kısaca Bash değişkenleri

Değişkenler, programlama dillerinin temel bileşenleridir. Bir bilgisayar programında referans alınır ve manipüle edilirler. Basitçe söylemek gerekirse, değişkenler adlandırılmış bellek hücrelerini temsil eder. Bu, herhangi bir programlama dilinde olduğu gibi Bash'de de aynıdır. Bu, biz insanlar ve bilgisayar kullanıcıları olarak bilgisayarın “beyninde” değerleri depolamamızı ve değişkenin atanan ismi aracılığıyla onları yeniden bulmamızı mümkün kılar.

Değişken terimi, iki kelimenin birleşik biçimini ifade eder, i.e., değişken + mümkün, yani değeri değiştirilebilir ve birden çok kez kullanılabilir. Bunun aksine değiştirilemeyen değişkenlere sabitler denir. [10]

Komut dosyanız için yeterli bellek olduğu sürece, değişkenleri özgürce oluşturabilir ve kullanabilirsiniz. Bir değişken adı tanımlayarak ve ardından değerini atayarak bunları kolayca ayarlayabilirsiniz. Bash'deki bir değişken adı harfler, rakamlar ve alt çizgiler içerebilir. Adı bir harf ve alt çizgi ile başlayabilir, sadece. Geçerli değişken adları size, tax5 ve _tax20'dir ancak 5 kural değildir.

Bash'deki değişken bir değer, bir sayı, tek bir karakter, bir karakter dizisi veya bir öğe listesi (dizi olarak adlandırılır) içerebilir. Görünür bir veri türüne sahip değildir ve değişkenin dahili veri türü, bir değer atandığında otomatik olarak belirlenir (veya türetilir). Ayrıca, değişkeni bildirmeye gerek yoktur - referansına bir değer atamak, değişkeni otomatik olarak yaratacaktır. Aşağıdaki örnek Bash betiği, bunu bir dize ataması ve sayısal bir sayı ataması için gösterir.

#! /bin/bash
WelcomeMessage="Merhaba Dünya!"
echo $hoşgeldinizMesajı
fiyat=145
yankı $fiyat

Bash Değişkenlerinin Adlandırma Kuralları

Değişken isimlerinin yazılışı için sabit kurallar yoktur, sadece kurallar vardır. Bu sözleşmeler kullanılır:

Küresel BT şirketleri için, şirket arasında ortak bir kodlama stili sağlamak için stil kılavuzlarıyla çalışmak yaygındır. İzledikleri kurallar hakkında daha fazla bilgi için IBM için Geliştirici Yazı İşleri'ne ve Google Stil Kılavuzuna [3] bakın.

Değişken Görünürlük

Varsayılan durum, bir değişkenin yerel olarak bir yapıya, işleve, komut dosyasına veya işleme bağlı olması ve bunun dışından erişilememesidir. Aşağıdaki örnek, komut dosyasına ait $message değişkeni ve outputWelcomeMessage() işlevine ait $welcome değişkeni için bunu göstermektedir.

#!/bin/bash
# komut dosyasına değişken bir mesaj tanımlayın
mesaj=”Merhaba, tekrar!”
çıktıHoşgeldinizMesajı ()
# yerel bir değişken tanımlayın
hoşgeldiniz=”Merhaba!”
yankı $hoşgeldin

outputWelcomeMessage () # Merhaba yazdırır!
echo $message # prints Tekrar merhaba!

Aynı ada sahip önceden tanımlanmış bir değişkenin yerel olarak bağlı olduğundan emin olmak için, aşağıda gösterildiği gibi local anahtar sözcüğünü kullanın. local anahtar sözcüğü olmadan, 8. satırdaki atama, daha önce tanımlanan aynı ada sahip global olarak tanımlanmış değişkenle ilgili olacaktır.

#!/bin/bash
# komut dosyasına değişken bir mesaj tanımlayın
mesaj=”Merhaba, tekrar!”
çıktıHoşgeldinizMesajı ()
# aynı ada sahip yerel bir değişken tanımlayın
Yerel mesaj=”Merhaba!”
yankı $mesajı

outputWelcomeMessage () # Merhaba yazdırır!
echo $message # prints Tekrar merhaba!

Bir değişkenin kapsamını genişletme

Bir iç değişkeni diğer alt süreçlere görünür kılmak için ek bir adım gereklidir. Bu adıma bir değişkeni dışa aktarma denir. Bash, dışa aktarma anahtar kelimesinin ve ardından değişken adının kullanımını sunar. Aşağıdaki liste bunu backupPath değişkeni için göstermektedir.

$ backupPath=”/opt/backup/”
$ yedekleme yolunu dışa aktar

Dışa aktarma komutu, değişkeni alt kabukların (orijinalden oluşturulan kabuklar) devraldığı bir değişken olarak tanımlamak için kullanılan yerleşik bir kabuktur. Dışa aktarılan değişkenler birden fazla işlem tarafından okunup yazılabilir, daha sonra.

İkinci seçenek, değişkeni baştan itibaren bir ortam değişkeni olarak bildirmektir. Bunu, beyan anahtar sözcüğünü ve ardından “-x” seçeneğini kullanarak yapabilirsiniz (dekraj komutu hakkında daha fazla bilgi için [5]'e bakın). Etki, daha önce tanıtılan dışa aktarma komutuna benzer.

$ beyan -x BACKUPPATH=”/opt/backup/”

Diğer oturumlardan devral

Bir programı çalıştırdığınızda, ortam değişkenlerini ana süreçten otomatik olarak devralır. Örneğin, $HOME ebeveynde /root olarak ayarlanmışsa, çocuğun $HOME değişkeni de /root olarak ayarlanır.

Diğer Komutlar

Diğerlerinin yanı sıra Linux, değişkenlerle ilgili kullanışlı komutlar ve seçeneklerle birlikte gelir. İlk ikisi env ve printenv olarak adlandırılır. Tüm ortam değişkenlerini listelerler.

Aşağıdaki resim, bir X oturumunda çalıştırılan bir terminalde env komutunun çıktısını göstermektedir. $XTERM (terminal tipi), $SHELL (oturum açma sırasında çağrılan ve Bash yorumlayıcıya giden yol için /bin/bash'i gösteren program), $LS_COLORS (farklı dosyaları vurgulamak için kullanılan renkler) gibi değişkenler içerir. ls çağırırken türler) ve $DESKTOP_SESSION (geçerli X Masaüstü Ortamı).

Üçüncü ve dördüncü, dışa aktarma komutunun seçenekleridir - -p ve -n. -p print için kısadır ve yalnızca geçerli kabuktaki dışa aktarılan tüm değişkenleri beyan komutunu kullanarak görüntüler.

$ ihracat -p
-x DESKTOP_SESSION="xfce" bildir
-x DISPLAY=":0" bildir
beyan -x GLADE_CATALOG_PATH=":"
beyan -x GLADE_MODULE_PATH=":"
beyan -x GLADE_PIXMAP_PATH=":"
-x HOME="/home/frank" bildir
beyan -x LANG="de_DE.UTF-8"

-n seçeneği, bir ortam değişkeninin ayarını kaldırmak için kullanılır. Aşağıdaki liste, bunu daha önce tanımlanmış BACKUPPATH değişkeni için göstermektedir.

$ dışa aktarma -n BACKUPPATH

Sonuç

Bash çok zeki ama bazen biraz karmaşık bir ortamdır. Değişkenler, farklı araçların nasıl etkileşime girdiğini kontrol eder. Değişkenleri dışa aktarmak, süreçler arasında iletişime yardımcı olur ve günlük yaşamda kullanımı kolaydır.

Yazarlar hakkında

Jacqui Kabeta çevreci, hevesli bir araştırmacı, eğitmen ve akıl hocasıdır. Birkaç Afrika ülkesinde BT endüstrisinde ve STK ortamlarında çalıştı.

Frank Hofmann bir BT geliştiricisi, eğitmeni ve yazarıdır ve Berlin, Cenevre ve Cape Town'da çalışmayı tercih eder. dpmb'den edinilebilen Debian Paket Yönetim Kitabının ortak yazarı.kuruluş

Bağlantılar ve Referanslar

El Takibiyle Oynanabilecek En İyi Oyunlar
Oculus Quest kısa süre önce, kontrolörler olmadan elle takip etme harika fikrini tanıttı. Resmi olarak veya SideQuest aracılığıyla destek sağlayan sür...
Tam Ekran Linux Uygulamalarında ve Oyunlarında OSD Yerleşimi Nasıl Gösterilir
Tam ekran oyunlar oynamak veya uygulamaları dikkat dağıtmayan tam ekran modunda kullanmak, bir panelde veya görev çubuğunda görünen ilgili sistem bilg...
En İyi 5 Oyun Yakalama Kartı
YouTube'da oyun akışlarını hepimiz gördük ve sevdik. PewDiePie, Jakesepticye ve Markiplier, oyun deneyimlerini yükleyerek ve izleyicileri en yeni oyun...