Bash Export Komutu

“Bash kabuğu, bir kabuktaki değişkenleri küresel hale getirmek için dışa aktarmaya izin veren yerleşik bir komut olan export komutundan yararlanır, böylece onlara başka bir kabuktan erişebilirsiniz. Export komutuyla, mevcut çevresel değişkenleri değiştirmeden çevresel değişkenleri bir alt süreç olarak diğer kabuklara aktarırsınız. ”

Bash Export Komutunu Anlama

Dışa aktarma komutunun yalnızca üç parametresi vardır.

  1. -n: adlandırılmış değişkenlerin dışa aktarılmayacağını belirtmek için kullanılır
  2. -p: dışa aktarılan tüm değişkenleri ve işlevleri listelemek için kullanılır
  3. -f: işlevleri dışa aktarırken kullanılır

Export komutunun ne zaman ve nerede işe yaradığını anlamak için bir örnek verelim. Geçerli kabukta olduğunuzu ve aşağıda gösterildiği gibi demo1 adlı yerel bir değişken oluşturduğunuzu varsayalım.

bash export command 01

Değişkenin değerine erişmek istiyorsak echo komutunu kullanabiliriz.

$ echo $demo1
bash export command 02

Ancak bash komutunu kullanarak başka bir kabuk açtıysak ve diğer kabukta aynı değişkenin değerini almaya çalışırsak, çıktı olarak hiçbir şey alamayız.

bash export command 03

Bu, oluşturduğumuz değişkenin çalışılan kabuğa ait olması nedeniyle olur. Genelde kullanmak için export etmeliyiz. Önceki kabuğumuza dönelim ve aşağıdaki komutu kullanarak değişkeni dışa aktaralım.

$ exit
$ export demo1
bash export command 04

Yeni bir kabuğa gidersek ve değişkeni tekrarlarsak, şimdi bir değer aldığımızı, yani değişkene erişimimiz olduğunu görürüz.

bash export command 05

Tüm bunlar mümkün çünkü export komutunu kullanarak dışa aktardık.

Export Edilen Değişkenleri Görüntüleme

Export komutunu bağımsız değişken olmadan çalıştırırsanız, kabuktan bağımsız olarak sisteminizde dışa aktarılan tüm değişkenleri listeler.

bash export command 06

Ancak, -p parametresini eklerseniz, yalnızca geçerli kabuktaki dışa aktarılan değişkenleri listeler.

bash export command 07

Dışa aktardığımız değişkenin listenin en altında olduğuna dikkat edin.

bash export command 08

İşlevleri Dışa Aktarma

Export komutuyla işlevleri bile dışa aktarmak için değişkenlerin ötesine geçebilirsiniz. Kabuğun bir işlevi dışa aktardığınızı algılamasını sağlamak için -f parametresini kullanın.

Şimdi bir fonksiyon oluşturalım, onu mevcut kabuğa aktaralım, sonra başka bir kabuktan erişmeyi deneyelim ve işe yarayıp yaramadığını görelim.

bash export command 09

Oluşturulan fonksiyonumuzla, aşağıda gösterildiği gibi, bir hata döndürdüğü yeni kabukta kullanılamadığını doğrulayabiliriz.

bash export command 10

Öyleyse geri dönün ve -f parametresini kullanarak dışa aktarın.

bash export command 11

Son olarak, yeni bir kabuk açın ve fonksiyonumuzun artık global olduğunu doğrulayın.

bash export command 12

Bingo! Bir işlevi dışa aktarmayı başardınız.

Değerleri Ayarlama

Export komutunu kullanarak bir değişkenin değerini ayarlayabilirsiniz. Bunun için aşağıdaki sözdizimine ihtiyacınız var.

$ export name[=value]

Örneğin oluşturduğumuz değişkenin değerini değiştirmek istersek aşağıdaki komutu kullanabiliriz.

bash export command 13

Güncellendikten sonra, yeni değeri yansıtıp yansıtmadığını kontrol etmek için değişkeni yankılayın.

bash export command 14

Varsayılan düzenleyiciyi ayarlamak gibi diğer çevresel değişkenleri bu şekilde değiştirebilirsiniz. Yalnızca şu anda ayarlanmış düzenleyiciyi grep etmeniz ve yeni bir tane ayarlamanız gerekir.

Aşağıdaki komutu kullanarak mevcut varsayılan düzenleyiciyi kontrol edelim.

$ export | grep EDITOR
bash export command 15

Bu durumda, şu anda ayarlanmış bir varsayılan düzenleyicimiz yok. Devam edelim ve aşağıdaki komutu kullanarak vim veya nano gibi bir tane ayarlayalım.

$ export EDITOR=/usr/bin/nano
bash export command 16

Tekrar kontrol edersek değişken değerinin değiştirildiğini görürüz.

Yazının orijinalini buradan okuyabilirsiniz.

Hüseyin GÜÇ

Kariyerime 26 yıl önce başladım. Windows ve Linux sistemlerinin kurulumu, yapılandırılması, yönetimi ve bakımı dahil olmak üzere birden fazla sistem üzerinde uzmanlaştım. Açık kaynak dünyasındaki en son gelişmelerden haberdar olmaktan ve Linux hakkındaki en son araçları, özellikleri ve hizmetleri denemekten hoşlanıyorum. Son 6 yıldır  sistem ve ağ yöneticisi olarak görev yapıyorum ayrıca Pardus Dönüşüm Projesini yönetiyorum ve Pardus İşletim Sisteminin yaygınlaşması adına uğraş gösteriyorum. Boş zamanlarımda açık kaynaklı uygulamaların Türkçe çevirisine katılıyorum ve The Document Foundation üyesiyim.