Unix / Linux - Dizin Yönetimi

Bu bölümde, Unix'te dizin yönetimi hakkında ayrıntılı olarak tartışacağız.

Bir dizin, tek başına dosya adlarını ve ilgili bilgileri depolamak olan bir dosyadır. Sıradan, özel veya dizin olsun, tüm dosyalar dizinlerde bulunur.

Unix, dosyaları ve dizinleri düzenlemek için hiyerarşik bir yapı kullanır. Bu yapı genellikle bir dizin ağacı olarak adlandırılır. Ağacın tek bir kök düğümü vardır, eğik çizgi karakteri (/) ve diğer tüm dizinler onun altında yer alır.

Ana Dizin

İlk oturum açtığınızda kendinizi içinde bulduğunuz dizine ana dizininiz denir.

Dosyalarınızı düzenlemek için oluşturacağınız ana dizininizde ve alt dizinlerde işinizin çoğunu yapacaksınız.

Aşağıdaki komutu kullanarak istediğiniz zaman ana dizininize gidebilirsiniz -

$cd ~
$

Buraya ~ana dizini gösterir. Başka bir kullanıcının ana dizinine gitmeniz gerektiğini varsayalım, aşağıdaki komutu kullanın -

$cd ~username
$

Son dizininize gitmek için aşağıdaki komutu kullanabilirsiniz -

$cd -
$

Mutlak / Göreli Yol Adları

Dizinler, üstte kök (/) olacak şekilde bir hiyerarşi içinde düzenlenmiştir. Herhangi bir dosyanın hiyerarşi içindeki konumu, yol adıyla açıklanır.

Bir yol adının öğeleri, / ile ayrılır. Bir yol adı, kök ile ilişkili olarak tanımlanmışsa mutlaktır, dolayısıyla mutlak yol adları her zaman / ile başlar.

Aşağıda mutlak dosya adlarının bazı örnekleri verilmiştir.

/etc/passwd
/users/sjones/chem/notes
/dev/rdsk/Os3

Bir yol adı aynı zamanda mevcut çalışma dizininize göre de olabilir. Göreli yol adları asla / ile başlamaz. Kullanıcı amrood'un ana dizinine göre bazı yol adları şöyle görünebilir -

chem/notes
personal/res

Herhangi bir zamanda dosya sistemi hiyerarşisi içinde nerede olduğunuzu belirlemek için şu komutu girin: pwd mevcut çalışma dizinini yazdırmak için -

$pwd
/user0/home/amrood

$

Listeleme Dizinleri

Dosyaları bir dizinde listelemek için aşağıdaki sözdizimini kullanabilirsiniz -

$ls dirname

Aşağıda, içinde bulunan tüm dosyaları listelemek için örnek verilmiştir. /usr/local dizin -

$ls /usr/local

X11       bin          gimp       jikes       sbin
ace       doc          include    lib         share
atalk     etc          info       man         ami

Dizinler Oluşturma

Şimdi nasıl dizin oluşturulacağını anlayacağız. Dizinler aşağıdaki komutla oluşturulur -

$mkdir dirname

Burada dizin, oluşturmak istediğiniz dizinin mutlak veya göreceli yol adıdır. Örneğin, - komutu -

$mkdir mydir
$

Dizini oluşturur mydirmevcut dizinde. İşte başka bir örnek -

$mkdir /tmp/test-dir
$

Bu komut dizini oluşturur test-dir içinde /tmpdizin. mkdir komut, istenen dizini başarıyla oluşturursa hiçbir çıktı üretmez.

Komut satırında birden fazla dizin verirseniz, mkdirdizinlerin her birini oluşturur. Örneğin, -

$mkdir docs pub
$

Geçerli dizinin altında docs ve pub dizinlerini oluşturur.

Ana Dizinler Oluşturma

Şimdi ana dizinlerin nasıl oluşturulacağını anlayacağız. Bazen bir dizin oluşturmak istediğinizde, onun üst dizini veya dizinleri mevcut olmayabilir. Bu durumda,mkdir aşağıdaki gibi bir hata mesajı verir -

$mkdir /tmp/amrood/test
mkdir: Failed to make directory "/tmp/amrood/test"; 
No such file or directory
$

Bu gibi durumlarda, şunu belirtebilirsiniz: -p seçeneği mkdirkomut. Sizin için gerekli tüm dizinleri oluşturur. Örneğin -

$mkdir -p /tmp/amrood/test
$

Yukarıdaki komut, gerekli tüm ana dizinleri oluşturur.

Dizinleri Kaldırma

Dizinler kullanılarak silinebilir rmdir aşağıdaki gibi komut -

$rmdir dirname
$

Note - Bir dizini kaldırmak için boş olduğundan emin olun, yani bu dizinde herhangi bir dosya veya alt dizin olmamalıdır.

Bir seferde aşağıdaki şekilde birden fazla dizini kaldırabilirsiniz -

$rmdir dirname1 dirname2 dirname3
$

Yukarıdaki komut, boşsa, dizinadı1, dizinadı2 ve dizinadı3 dizinlerini kaldırır. rmdir komut başarılı olursa çıktı üretmez.

Dizinleri Değiştirme

Kullanabilirsiniz cdbir ana dizine geçmekten daha fazlasını yapmak için komut. Geçerli bir mutlak veya göreceli yol belirterek herhangi bir dizine geçmek için kullanabilirsiniz. Sözdizimi aşağıda verildiği gibidir -

$cd dirname
$

Buraya, dirnamedeğiştirmek istediğiniz dizinin adıdır. Örneğin, - komutu -

$cd /usr/local/bin
$

Dizinde yapılan değişiklikler /usr/local/bin. Bu dizinden şunları yapabilirsiniz:cd dizine /usr/home/amrood aşağıdaki göreli yolu kullanarak -

$cd ../../home/amrood
$

Dizinleri Yeniden Adlandırma

mv (move)komutu, bir dizini yeniden adlandırmak için de kullanılabilir. Sözdizimi aşağıdaki gibidir -

$mv olddir newdir
$

Bir dizini yeniden adlandırabilirsiniz mydir -e yourdir aşağıdaki gibi -

$mv mydir yourdir
$

Dizinler. (nokta) ve .. (nokta nokta)

filename .(nokta) mevcut çalışma dizinini temsil eder; vefilename .. (nokta nokta), genellikle ana dizin olarak adlandırılan, geçerli çalışma dizininin bir üst düzeyindeki dizini temsil eder.

Mevcut çalışma dizinlerinin / dosyaların bir listesini göstermek için komut girersek ve -a option tüm dosyaları ve -l option Uzun listeyi sağlamak için aşağıdaki sonucu alacağız.

$ls -la
drwxrwxr-x    4    teacher   class   2048  Jul 16 17.56 .
drwxr-xr-x    60   root              1536  Jul 13 14:18 ..
----------    1    teacher   class   4210  May 1 08:27 .profile
-rwxr-xr-x    1    teacher   class   1948  May 12 13:42 memo
$