Örneklerle Linux’ta Pwd Komutu Nasıl Kullanılır

Merhabalar,

 

Linux komut satırı ile çalışanlar için, kökten (/) başlayarak nerede olduğunuzu – hangi dizinde olduğunuzu söyleyen ‘pwd’ komutu çok yararlıdır. Navigasyon sırasında komut satırı arayüzündeki dizinler arasında kaybolabilecek Linux’a yeni başlayanlar için ‘pwd’ komutu sizi kurtarmaya geliyor.

pwd nedir?

‘pwd’, ‘Çalışma Dizini Yazdır’ anlamına gelir. Adından da anlaşılacağı gibi, ‘pwd’ komutu mevcut çalışma dizinini veya şu anda  kullanıcının bulunduğu dizini yazdırır. Geçerli dizin adını kökten (/) başlayarak tam yol ile yazdırır. Bu komut shell içinde mevcuttur ve bir çok shell` in oğunda bulunur – bash, Bourne kabuğu, ksh, zsh, vb.

pwd’nin temel söz dizimi:

pwd [OPTION]

 

pwd ile kullanılabilecek seçenekler:

 Options  Description
 -L (logical)  Use PWD from environment, even if it contains symbolic links
 -P (physical)  Avoid all symbolic links
 –help  Display this help and exit
 –version  Output version information and exit

Hem ‘-L’ hem de ‘-P’ seçenekleri kullanılıyorsa, ‘L’ seçeneği önceliklendirilir. İstemde herhangi bir seçenek belirtilmezse, pwd tüm sembolik bağlantıları engelleyecektir.Kısacası ‘-P’ seçeneğini hesaba katacaktır.

 

pwd komutunun çıkış durumu:

0 Success (Başarılı)
Non-zero Failure (Başarısız)

 

Bu eğitim makalesi, pratik örneklerle size pwd komutu hakkında  sizleri bilgilendirmeyi amaçlamaktadır.

 

1. Mevcut çalışma dizinini yazdırma:

pwd

 

 

2. Bir klasörün sembolik bağlantısını oluşturun ( www/wordpress/wp-content/themes/ dizinini seçiyorum, ana dizinime themes olarak bir tane sembolik bağlantı oluşturuyorum). Yeni oluşturulan dizine gidelim ve çalışma dizinini sembolik linklerle ve sembolik linkler olmadan yazdırın.

ilk önce sembolik bağlantı oluşturma komutu

ln -s www/wordpress/wp-content/themes/  themes

 

Şimdi işlemi yapmadan önce themes sembolik bağlantı içine gideyim.

cd Desktop/themes

 

3. Çalışma dizinini, sembolik bağlantılar içerse bile mevcut dizini yazdıracak deneyelim.

pwd

 

veya

pwd -L

 

 

4. aşağıdaki komutla sembolik bağlatıları çözerek gerçek fiziksel mevcut çalışma dizinini yazdırmayı görelim.

pwd -P

 

 

5. “pwd” ve “pwd -P” komutunun çıktısının aynı olup olmadığını kontrol edelim, yani çalışma anında herhangi bir seçenek verilmezse “pwd”, -P seçeneğini otomatik olarak dikkate alıyor mu, almıyor mu? Aslında biraz önce onu yukarıda yaptım tekrar yapayım.

 

yukarıda görüldüğü gibi sadece pwd  yazdığınızda  sembolik bağlantı dizinini gösteriyor.Pwd -P ile kullanırsak sembolik bağlantının gerçekte gösterdiği  gerçek yolu gösteriyor.

Bu işlemlerin hepsi ana  bin/pwd içindeki komutu çalıştırdınızda tam tersi şekilde çalışır.Ne demek istiyorum. pwd ve pwd -P aynı şeyi döndürür. pwd -L sembolik bağlantıyı döndürür sadece.Hemen deneyelim bu çok önemli.

/bin/pwd
/bin/pwd -P

 

Yukarıda görüldüğü pwd ve pwd -P  aynı şekilde fiziksel yolu döndürdü.Burası unutulmamalıdır.pwd ve /bin/pwd  komutu çalıştırdığınız tam tersi dönüş alırsınız.

type -a pwd

 

6. ‘pwd’ komutunuzun sürümünü yazdırma:

/bin/pwd --version

 

 

Not: Bir “pwd” komutu genellikle seçenekler olmadan kullanılır ve hiçbir zaman bağımsız değişkenlerle birlikte kullanılmaz.

Önemli: Yukarıdaki komutu “pwd” değil “/bin/pwd” olarak uyguladığımızı fark etmişsinizdir.Biraz önce açıkladım aslında konuyu.Tekrar kısaca açıklayayım.

Fark nedir? Tek başına “pwd”, shell built-in (kabuğun yerleşik) pwd’si anlamına gelir. Sizin shell (Kabuğunuz)` iniz farklı bir pwd sürümüne sahip olabilir. /bin/pwd şeklinde kullandığımızda, bu komutun binary versiyonunu çağırıyoruz. Komutun hem shell hem de  binary sürümü Geçerli Çalışma Dizinini Yazdırır, ancak binary sürümün daha fazla seçeneği vardır.

8. “pwd” komutunun değerini değişkende saklayın (a diyelim) ve değerini değişkenden yazdırın (kabuk komut dosyası oluşturma perspektifi için önemlidir).

path=$(pwd)

 

Alternatif olarak yukarıdaki örnek için printf kullanabiliriz.

printf "$path\n";

 

 

9. Geçerli çalışma dizinini herhangi bir şeyle değiştirin ( /home deyin) ve komut satırı isteminde görüntüleyin. Her şeyin yolunda olduğunu doğrulamak için bir komut yürütün (‘ls’ deyin).

PS1='$pwd> '

 

11. Geçerli çalışma dizinini ve önceki çalışma dizinini tek bir GO!

12. pwd b dosyasının mutlak yolu (/’den başlayarak) nedir.

/bin/pwd

 

15. Bir shell script yazalım, ana dizininizdeki geçerli dizininin (örneğin  global-protect) olup olmadığını kontrol eder. Eğer global-protect) dizini altındaysanız “Eh! global-protect dizinin içindesiniz” ve ardından “Hoşçakal” yazdıralım aksi takdirde ana dizininizin altında bir global-protect dizini oluşturup bunun bilgisini ekranan yazdıralım.

 

Önce bir ‘global-protect’ dizini oluşturalım, altında ‘pwd.sh’ adında bir aşağıdaki shell komut dosyası oluşturalım.

Ardından, aşağıdaki betiği pwd.sh dosyasına ekleyin.

#!/bin/bash

x="$(pwd)"
if [ "$x" == "/home/$USER/Desktop/global-protect" ]
then
{
echo "Zaten Global Protect Dizinin içindesiniz"
echo "Hoscakalın"
}
else
{
mkdir /home/$USER/Desktop/global-protect
echo "Global-protect Dizini olusturuldu"
}
fi

 

Yürütme izni verin ve çalıştırın.

 

Bu eğitim yazımızında sonuna geldik.Umarım sizler için faydalı olur.

 

Bu eğiticiye oy ver
[Total: 5 Average: 5]
Firat CANOĞLU TAĞ