Kabuk Programlamaya Giriş – Bash Kabuğu Dosya Klasör İşlemleri

Dosya ve Klasör Oluşturma

Linux sistemlerinin en temel taşlarından birisi de dosya sistemidir. Kabuğu ve kabuğun üzerinde çalışan komutları kullanarak dosya sistemine erişebiliriz, üzerinde değişiklikler yapabiliriz. Linux dosya sistemi kök (“root”) diye ifade edilen, / karakteri ile belirtilen noktadan başlar ve hiyerarşik ağaç yapısı ile ilerler. 
Genel olarak kullanılan klasör isimlerinden bazıları şöyledir: 
  •          can isimli kullanıcıya ayrılan klasör: /home/can
  •          var, “variable” (değişken) , “log” (kayıt) , sistemin ürettiği kayıt dosyalarına ayrılan klasör: /var/log
  •          tmp, “temprorary” (geçiçi), geçici olarak kullanılan, heran silinebilecek olan dosyalar için ayrılan klasör: /tmp


Geçerli klasörümüzde dosya oluşturmak için touch komutu kullanılır.
 touch Dosya
 touch dosya.txt

Oluşturduğumuz dosyayı görüntülemek için ls komutunu kullanırız.
 ls Dosya

Geçerli dizinin içerisine klasör oluşturmak için:
 $mkdir d

Oluşturduğumuz klasörü görüntülemek için:
 $ls

Kabuk Programlamaya Giriş - Bash Kabuğu Dosya Klasör İşlemleri


Dosya ve Klasör İşlemleri

-a (“all”, hepsi) seçeneği, ls komutuna, klasördeki gizli elemanları da göstermesini istediğimizi belirtir. 
 ls a

-l seçeneği ise, geçerli klasördeki ögeler hakkında bize biraz daha fazla bilgi verir.
ls l

Hem -a hem de -l seçeneğini beraber kullanabiliriz:
ls al
rm
Dosya/klasör silme komutu.
rmdir
Klasör silme komutu.
mkdir
Klasör oluşturma komutu.
clear
Terminal ekranını, komut satırını temizleme komutu.

-f
Dosyayı zorla sil.
-r
Recursive olarak yani içinde ne var ne yok hepsini sil.
-d
Boş klasörleri sil.


rm dosya/klasör_adı
rm dosya.txt
Dosya silme işleminde herhangi bir ekstra dosya yada klasör işin içine girmiyor ve hemen siliniyor, fakat aynı yöntemle klasör silmeye çalıştığımızda hata veriyor. Çünkü silmeye çalıştığımız klasör içerisinde başka dosya yada klasör/ler olabilir.
rm -rf sarı

Karşılaştırma İfadeleri

Aritmetik Karşılaştırmalar
Dizisel Karşılaştırma
Mantıksal Karşılaştırmalar
Dosya Karşılaştırması
-gt   büyük 
-lt    küçük
-ge  büyük eşit
-le   küçük eşit 
-eq  eşit 
-ne  eşit değil
-z   boş dizi 
-n  tanımlı dizi 
=    eşit diziler 
!=   farklı diziler
-a   VE 
-o   VEYA 
!     DEĞİL 
-f    dosya var
-s    dosya boş değil 
-r    dosya okunabilir 
-w   dosyaya yazılabilir 
-x    çalıştırılabilir dosya 
-h    sembolik bağlantı 
-c    karakter aygıt 
-b    blok aygıt

Dosya Kontrol İşlemleri

Linux işletim sistemlerinde her şey dosyadır. Dosya işlemler için aşağıdaki ifadeler kullanılabilir.
[ -f $DosyaAdi ] # Dosya varsa
[ -O $DosyaAdi ] # Dosya var ve sahibi betiği çalıştıransa
[ -G $DosyaAdi ] # Dosya var ve sahibi betiği çalıştıranın grubuysa
[ -r $DosyaAdi ] # Dosya var ve komutu çalıştıran kullanıcının dosyayı okuma yetkisi varsa
[ -w $DosyaAdi ] # Dosya var ve komutu çalıştıran kullanıcının dosyayı yazma yetkisi varsa
[ -x $DosyaAdi ] # Dosya var ve komutu çalıştıran kullanıcının dosyayı çalıştırma yetkisi varsa
[ -s $DosyaAdi ] # Dosya var ve boyutu 0’dan büyükse (boş değilse)
[ -d $DosyaAdi ] # Dosya bir dizin ise
[ $DosyaAdi1 -ef $DosyaAdi2 ] # Dosyalar aynıysa (Nesne ID değeri olarak)
Share

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir