Perl Ortam Değişkenleri

Perl Ortam Degiskenleri



Kabuk komut dosyası dillerinde iki tür değişken kullanılabilir: biri kabuk değişkenleri, diğeri ise ortam değişkenleridir. Ortam değişkenleri, kodlama dilleri için genel değişkenler olarak işlenir. Komut dosyasını yürütmek için kullanılan ortamla ilgili veriler ortam değişkenlerinde saklanır. Bu değişkenler anahtar/değer çiftine göre saklanır. Değişkenin adı, değişkenin değerini saklayan anahtar tarafından tanımlanır. Herhangi bir ortam değişkeninin değeri Perl betiği tarafından ayarlanabilir veya erişilebilir. Perl betiğini kullanarak ortam değişkenlerine erişme ve bunları değiştirme yöntemleri bu eğitimde gösterilmektedir.

Perl Komut Dosyasında Ortam Değişkenlerinin Kullanımı

Belirli ortam değişkenlerine veya tümüne erişme ve herhangi bir ortam değişkenini sıfırlama yöntemleri eğitimin bu bölümünde gösterilmektedir.







Örnek 1: Belirli Ortam Değişkenlerini Yazdırma



Ortam değişkenleri, ilişkisel dizi gibi çalışan %ENV dizisinde saklanır. Değişken adı %ENV dizisinin anahtarıdır ve değer bu anahtarda saklanır. Aşağıdaki komut dosyasıyla üç ortam değişkenini yazdıran bir Perl dosyası oluşturun. Geçerli oturum açma kullanıcı adı $ENV{'USER'} değişkeninde saklanır. Geçerli kabuk değeri $ENV{'SHELL'} değişkeninde saklanır. Geçerli çalışma dizini $ENV{'PWD'} değişkeninde saklanır. Bu üç değişkene kodda erişilir ve yazdırılır.



#!/local/bin/perl

katı kullanın;
uyarıları kullanın;
5.34.0 kullanın;

#Üç ortam değişkeninin değerlerini yazdır
söylemek 'Kullanıcı adı:' . $ENV { 'KULLANICI' } ;
söylemek 'Geçerli kabuk' . $ENV { 'KABUK' } ;
söylemek 'Geçerli çalışma dizini:' . $ENV { 'Özürlü' } ;





Çıktı:

Betiği çalıştırdıktan sonra aşağıdaki benzer çıktı görünür:



Örnek 2: İlk Beş Ortam Değişkenini Yazdırma

Tüm ortam değişkenlerini içeren %ENV dizisinin ilk beş değerini okumak için aşağıdaki komut dosyasıyla bir Perl dosyası oluşturun. Burada “foreach” döngüsü, sıralanan anahtar değerlere göre tüm ortam değişkenlerini okumak için kullanılır. Beş ortam değişkenini yazdırdıktan sonra döngüyü sonlandırmak için kodda '$counter' değişkeni kullanılır. Döngünün her yinelemesinde “$counter” değişkeni bir artırılır ve “$counter” değeri 5 olduğunda döngüden çıkmak için “last” ifadesi çalıştırılır.

#!/local/bin/perl

katı kullanın;
uyarıları kullanın;
5.34.0 kullanın;

#Sayacı başlat
Benim $sayaç = 0 ;
#Tüm ortam değişkenlerini okumak için döngüyü yineleyin
her biri için ( düzenlemek anahtarlar % ENV ) {
#Ortam değişkeninin adını oku
Benim $anahtar = $_ ;
#Ortam değişkeninin değerini oku
Benim $değer = $ENV { $anahtar } ;
#Değişken adını değerle yazdır
söylemek ' $anahtar => $değer ' ;
#Sayacı artır
$sayaç ++;
#Sayaç değerini kontrol et
eğer ( $sayaç > = 5 )
{
#Döngüyü sonlandır
son ;
}
}

Çıktı:

Betiği çalıştırdıktan sonra aşağıdaki benzer çıktı görünür:

Örnek 3: Ortam Değişkenini Sıfırlayın

Önceki örneklerde, ortam değişkenlerinin önceden tanımlanmış değerlerine ayrı ayrı ve bir döngü kullanılarak erişilmektedir. Ancak herhangi bir ortam değişkeninin değeri Perl betiği kullanılarak değiştirilebilir. Aşağıdaki komut dosyasıyla HOME'un konumunu yazdıran, konumu '/temp/files' olarak değiştiren ve güncellemeden sonra HOME'un konumunu yeniden yazdıran bir Perl dosyası oluşturun.

#!/local/bin/Perl

katı kullanın;
uyarıları kullanın;
5.34.0 kullanın;


#Belirli bir ortam değişkeninin değerini yazdır
söylemek 'HOME'un şu anki değeri' . $ENV { 'EV' } ;

#Ortam değişkenini sıfırla
$ENV { 'EV' } = '/temp/dosyalar' ;

#Güncellemeden sonra belirli ortam değişkeninin değerini yazdır
söylemek 'HOME'un şu anki değeri' . $ENV { 'EV' } ;

Çıktı:

Betiği çalıştırdıktan sonra aşağıdaki benzer çıktı görünür:

Örnek 4: Ortam Değişkenlerini Formatlamayla Yazdırma

Printf() işlevini kullanarak ortam değişkenlerini biçimlendirmeyle yazdıran aşağıdaki komut dosyasıyla bir Perl dosyası oluşturun. Burada bir önceki örnekte olduğu gibi tüm ortam değişkenlerini okumak için “foreach” döngüsü kullanılıyor. Ortam değişkeninin anahtar/değer çifti, anahtar ile değer arasına iki nokta üst üste (:) eklenerek ve anahtar için 15 karakterlik boşluk bırakılarak yazdırılır.

#!/local/bin/perl

katı kullanın;
uyarıları kullanın;
5.34.0 kullanın;

#Tüm ortam değişkenlerini okumak için döngüyü yineleyin
benim için bin dolar ( düzenlemek anahtarlar % ENV ) {
#Ortam değişkenlerinin biçimlendirilmiş çıktısını yazdır
baskı ( '%15s : %s \N ' , bin dolar , $ENV { bin dolar } ) ;
}

Çıktı:

Betiği çalıştırdıktan sonra aşağıdaki benzer çıktı görünür. Çıktının başlangıcındaki bazı bölümler burada gösterilmektedir:

Çözüm

Ortam değişkenleri farklı amaçlar için kullanılır ve bazen herhangi bir programlama amacı için belirli bir ortam değişkeninin mevcut değerinin değiştirilmesi gerekebilir. Perl betiğini kullanarak ortam değişkenlerinin değerlerini alma ve ayarlama yöntemleri, Perl kullanıcılarına yardımcı olmak amacıyla bu eğitimin örneklerinde gösterilmiştir.