Skip to content

Bash Ortam Değişkenleri için Linux ‘set’ Komutu

6 de Mayıs de 2021

The Ayarlamak Linux’ta komut, Bash kabuk ortamındaki belirli bayrakları veya ayarları etkinleştirir veya siler. Diğer kabuklar, yerel değişkenleri ayarlamak için farklı yöntemler kullanır.

Set Komutunu Kullanma

Set komutu, komut dosyalarınızın davranışını belirlemek için Bash’deki belirli bayrakları ve özellikleri kontrol etmenizi sağlar. Bu kontroller, komut dosyalarınızın istenen yolu izlemesini ve Bash’deki bazı tuhaflıkların soruna dönüşmemesini sağlamaya yardımcı olur. Basit bir şeyle başlayın. Bash’in dosyaların üzerine yazma şeklindeki varsayılan davranışını devre dışı bırakmak istediğinizi varsayalım, ‘-C’ bayrağı bunu engelleyecektir. Örneğin, çalıştırma: set -C

type = “code”>, Bash’i, çıktı yeniden yönlendirmesini kullanarak mevcut bir dosyanın üzerine yazmayacak şekilde yapılandırır >, > &, ve <> bir dosyaya yönlendirilir. Varsayılan olarak, Bash yeniden yönlendirilmiş çıktının mevcut dosyaların üzerine yazmasına izin verir.

Gördüğünüz gibi, dosyanın üzerine yazılamayacağını size bildiren bir mesaj belirir. Bu, özellikle komut dosyalarınızda hata ayıklarken kullanışlıdır ve var olan verileri yanlışlıkla kaybetmek istemezsiniz. Daha sonra, daha yaygın olarak “globbing” olarak bilinen otomatik dosya adı oluşturmayı devre dışı bırakmak isteyebilirsiniz. Globbing, dosyaları bulmada çok yararlı olabilir, ancak aynı zamanda kötü niyetli bir karakter, komut dosyanızda yanlış yere giderse bazı ciddi sorunlara da neden olabilir. ‘-F’ bayrağı onu devre dışı bırakır. set -f

Ardından, aşağıdaki gibi bir şey çalıştırmayı deneyebilirsiniz: ls *

Normalde, ekranınızda bir yığın dosya ve klasörün atıldığını görürsünüz, ancak şimdi, yalnızca böyle bir dizin olmadığını size bildiren bir mesaj alacaksınız.

Linux set command globbing'i devre dışı bırak

Bir komut dosyasında hata ayıklarken, muhtemelen kısmen işlevsel bir komut dosyasının çalışmaya devam etmesini, hasara neden olmasını veya yanlış sonuçlar üretmesini istemezsiniz. Bir şeyler ters gittiğinde bir komut dosyasını hemen durdurmak için ‘-e’ bayrağını etkinleştirebilirsiniz. set -e

Benzer bir notta, set komutu, betiğinizde hangi komutun yürütüldüğünü görmenizi ve ardından sonucun gelmesini sağlar. Bu, betiğinizin nerede olduğunu ve her komutun sonucunun ne olduğunu gerçek zamanlı olarak okuyarak daha doğru bir şekilde hata ayıklamanıza olanak tanır. Bu süper kullanışlı işlevsellik ‘-x’ işaretinden gelir. set -x

Her yinelemeyi görmek için basit bir while döngüsü ile deneyebilirsiniz. x = 10
süre [ $x -gt 0 ]; yapmak
x = $[ $x-1 ]
echo $ x
uyku 2
bitti

Nasıl sonuçlandığına dikkat edin. Her satırın doğrudan bir çıktısını alacaksınız. Ardından, Bash satırı çalıştıracak ve varsa sonuçtan size bir çıktı verecek ve bir sonraki satıra geçecektir. Bu yöntem, komut dosyalarınızda hata ayıklarken çok büyük bir zaman tasarrufu sağlayabilir.

X bayrağı ile Linux set komutu

Devam ettiyseniz, muhtemelen set komutunun getirdiği değişikliklerin kalıcı göründüğünü fark etmişsinizdir. Onlar değil. Bunları devre dışı bırakmak için herhangi bir bayrağın önünde artı işaretini (+) kullanın. + x ayarla

Set komutunun nasıl çalıştığı ve yapabileceği hakkında daha fazla bilgi için her zaman çalıştırabilirsiniz: set –help

Bash için yerleşik değişkenlerin yapılandırılmasıyla ilgili daha kapsamlı tavsiyeler için, Bash kılavuzunun şu konularla ilgili talimatlarını gözden geçirin: Ayarlamak.