Linux'ta 15 'pwd' (Çalışma Dizinini Yazdır) Komut Örnekleri


Linux komut satırıyla çalışanlar için 'pwd' komutu çok faydalıdır; bu komut, kökten (/) başlayarak nerede, hangi dizinde olduğunuzu söyler. Gezinme sırasında komut satırı arayüzündeki dizinler arasında kaybolabilen Linux'a yeni başlayanlar için 'pwd' komutu imdada yetişiyor.

pwd nedir?

'pwd', 'Çalışma Dizinini Yazdır' anlamına gelir. Adından da anlaşılacağı gibi, 'pwd' komutu geçerli çalışma dizinini veya yalnızca kullanıcının şu anda bulunduğu dizini yazdırır. Geçerli dizin adını kökten (/) başlayarak tam yolla birlikte yazdırır. Bu komut kabuk komutunda yerleşiktir ve çoğu kabukta mevcuttur – bash, Bourne kabuğu, ksh,zsh, vb.

pwd'nin temel sözdizimi:
pwd [OPTION]
pwd ile kullanılan seçenekler
 Options

 Açıklama

 -L (logical)

 Sembolik bağlantılar içerse bile ortamdan PWD kullanın

 -P (physical)

 Tüm sembolik bağlantılardan kaçının

 –help

 Bu yardımı görüntüle ve çık

 –version

 Sürüm bilgilerinin çıktısı ve çıkışı

Hem '-L' hem de '-P' seçeneği kullanılıyorsa, 'L' seçeneği öncelikli olarak alınır. İstemde hiçbir seçenek belirtilmezse, pwd tüm sembolik bağlantılardan kaçınır, yani '-P' seçeneğini hesaba katar.

pwd komutunun çıkış durumu:

0

Başarılı

Non-zero

Başarısızlık

Bu makale size Linux komutu 'pwd' hakkında pratik örneklerle derinlemesine bir fikir sunmayı amaçlamaktadır.

1. Geçerli çalışma dizininizi yazdırın.

avi@tecmint:~$ /bin/pwd

/home/avi

2. Bir klasörün sembolik bağlantısını oluşturun (ana dizininize htm olarak /var/www/html deyin). Yeni oluşturulan dizine gidin ve çalışma dizinini sembolik bağlantılar içeren ve sembolik bağlantılar olmadan yazdırın.

Ana dizininizde /var/www/html klasörünün htm olarak sembolik bir bağlantısını oluşturun ve ona taşıyın.

avi@tecmint:~$ ln -s /var/www/html/ htm
avi@tecmint:~$ cd htm

3. Sembolik bağlantılar içerse bile çalışma dizinini ortamdan yazdırın.

avi@tecmint:~$ /bin/pwd -L

/home/avi/htm

4. Tüm sembolik bağlantıları çözümleyerek gerçek fiziksel geçerli çalışma dizinini yazdırın.

avi@tecmint:~$ /bin/pwd -P

/var/www/html

5.pwd ” ve “pwd -P ” komutunun çıktısının aynı olup olmadığını kontrol edin; örneğin, burada hiçbir seçenek verilmemişse çalışma zamanı “pwd ”, -P seçeneğini otomatik olarak dikkate alır veya almaz.

avi@tecmint:~$ /bin/pwd

/var/www/html

Sonuç: Yukarıdaki örnek 4 ve 5'in çıktısından açıkça görülmektedir (her iki sonuç da aynıdır), dolayısıyla “pwd ” komutuyla hiçbir seçenek belirtilmediğinde b ”, otomatik olarak “-P ” seçeneğini dikkate alır.

6. 'pwd' komutunuzun sürümünü yazdırın.

avi@tecmint:~$ /bin/pwd --version

pwd (GNU coreutils) 8.23
Copyright (C) 2014 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Written by Jim Meyering.

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

Önemli: Yukarıdaki komutu "pwd<" olarak değil, "/bin/pwd " olarak çalıştırdığımızı fark etmiş olabilirsiniz. ”.

Peki fark nedir? Aslında "pwd" tek başına kabuğun yerleşik pwd'si anlamına gelir. Kabuğunuzun farklı pwd sürümü olabilir. Lütfen kılavuza bakın. /bin/pwd kullandığımızda bu komutun ikili versiyonunu çağırıyoruz. Komutun hem kabuğu hem de ikili sürümü Geçerli Çalışma Dizinini Yazdırır, ancak ikili sürümün daha fazla seçeneği vardır.

7. pwd adlı yürütülebilir dosyayı içeren tüm konumları yazdırın.

avi@tecmint:~$ type -a pwd

pwd is a shell builtin
pwd is /bin/pwd

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

avi@tecmint:~$ a=$(pwd)
avi@tecmint:~$ echo "Current working directory is : $a"

Current working directory is : /home/avi

Alternatif olarak yukarıdaki örnekte printf komutunu kullanabiliriz.

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

avi@tecmint:~$ cd /home
avi@tecmint:~$ PS1='$pwd> '		[Notice single quotes in the example]
> ls

10. Çok satırlı komut satırı istemini ayarlayın (aşağıdakine benzer bir şey söyleyin).

/home
123#Hello#!

Daha sonra her şeyin tamam olup olmadığını kontrol etmek için bir komut çalıştırın (ls deyin).

avi@tecmint:~$ PS1='
> $PWD
123#Hello#!
'

/home
123#Hello#!

11. Tek GO!'da mevcut çalışma dizinini ve önceki çalışma dizinini kontrol edin.

avi@tecmint:~$ echo “$PWD $OLDPWD”

/home /home/avi

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

/bin/pwd 

13. pwd kaynak dosyasının mutlak yolu nedir (/'den başlayarak).

/usr/include/pwd.h 

14. pwd kılavuz sayfaları dosyasının mutlak yolunu (/'den başlayarak) yazdırın.

/usr/share/man/man1/pwd.1.gz

15. Bir kabuk betiği yazın, ana dizininizdeki mevcut dizini (örneğin tecmint) analiz eder. Eğer tecmint dizini altındaysanız “Peki! tecmint dizinindesiniz ” ve ardından “Hoşçakal” yazın, aksi takdirde ana dizininizin altında bir tecmint dizini oluşturun ve sizden cd yapmanızı isteyin b> buna.

Öncelikle bir 'tecmint' dizini oluşturalım, altında 'pwd.sh' adında aşağıdaki kabuk betik dosyasını oluşturalım.

avi@tecmint:~$ mkdir tecmint
avi@tecmint:~$ cd tecmint
avi@tecmint:~$ nano pwd.sh

Daha sonra aşağıdaki betiği pwd.sh dosyasına ekleyin.

#!/bin/bash

x="$(pwd)"
if [ "$x" == "/home/$USER/tecmint" ]
then
     {
      echo "Well you are in tecmint directory"
      echo "Good Bye"
     }
else
     {
      mkdir /home/$USER/tecmint
      echo "Created Directory tecmint you may now cd to it"
     }
fi

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

avi@tecmint:~$ chmod 755 pwd.sh
avi@tecmint:~$ ./pwd.sh

Well you are in tecmint directory
Good Bye

Çözüm

pwd en basit ama en popüler ve en yaygın kullanılan komutlardan biridir. Pwd üzerinde iyi bir komut Linux terminalini kullanmanın temelidir. Şimdilik bu kadar. Yakında başka ilginç bir makaleyle tekrar burada olacağım, o zamana kadar bizi izlemeye devam edin ve Tecmint'e bağlı kalın.