Tüm Barındırma hizmetlerimizde becerilerinizi test edin ve % 15 indirim kazanın!

Ödeme sırasında kodu kullanın:

Skills
03.06.2025

Python’da dosya ve dizinleri silme

AlexHost VPS’de Python ile Gelişmiş Dosya ve Dizin Silme

Python’da neden ana dosya silme? Dosyaları ve dizinleri yönetmek, özellikle dinamik uygulamalar veya WordPress gibi CMS platformları barındıran bir AlexHost Linux VPS ‘de geliştiriciler için temel bir görevdir. Python’un os, shutil ve pathlib modülleri, AlexHost’un SSD’leri ve kök erişimi ile dosya ve dizinleri silmeyi verimli ve güvenli hale getirir ve en yüksek performansı sağlar. Bu kılavuz, sorunsuz dosya yönetimi için hata işleme ile birlikte gelişmiş silme yöntemlerini kapsar.

Modüllerin anlaşılması

1. Modül işletim sistemi

Os modülü, dosya sistemine okuma veya yazma gibi işletim sistemine bağlı işlevleri kullanma olanağı sağlar. Dosya ve dizin silme işlevlerini içerir. Linux VPS barındırma ortamında os modülünün kullanılması, dosya yönetimi ve diğer sistem düzeyindeki işlemler üzerinde etkili kontrol sağlar. Bu modül, geliştiricilerin dosya ve dizinleri doğrudan sunucu üzerinde okuma, yazma ve silme gibi eylemleri gerçekleştirmesine olanak tanır

Anahtar özellikler:

  • os.remove(yol): Bir dosyanın yolunu kaldırır.
  • os.rmdir(yol): Bir dizine giden yolu kaldırır (yok eder). Dizin boş olmalıdır.
  • os.unlink(yol): Bir dosyayı silmek için kullanılan os.remove() işlevinin diğer adı.

2. Modül shutil

Shutil modülü dosyalarla çalışmak için üst düzey bir arayüz sunar. Özellikle dizinleri ve dosyaları kopyalamak ve silmek için kullanışlıdır

Anahtar özellikler:

  • shutil.rmtree(yol): Bir dizini ve alt dizinler ve dosyalar dahil tüm içeriğini özyinelemeli olarak kaldırır.
  • shutil.move(src, dst): Bir dosya veya dizini başka bir konuma taşır. Dosyaları var olmayan bir dizine taşıyarak silmek için de kullanılabilir.

3. Pathlib modülü

Pathlib modülü, dosya sistemi yollarıyla çalışmak için nesne yönelimli bir yaklaşım sağlar. Bu modül Python 3.4’te ortaya çıktı ve daha sezgisel ve okunması daha kolay olarak kabul edildi

Anahtar özellikler:

  • Path.unlink(): Dosyayı siler.
  • Path.rmdir(): Boş bir dizini siler.
  • Path.rmtree(): Bir dizini ve içeriğini silmek için shutil.rmtree() genellikle Path ile birlikte kullanılır.

Dosya ve dizin silmek için gelişmiş yöntemler

Os modülünü kullanma

Dosya ve dizinleri silmek için os modülünü nasıl kullanacağınız aşağıda açıklanmıştır

Seçenek A: Etkileşimli Python’da Çalıştırma

  1. Yazarak etkileşimli bir Python oturumu açın
    ###ATP_PRO_NOTR_1_CODE_TAG_NOTR_ATP_PRO##

    (Python sisteminizde bu şekilde yapılandırılmışsa python kullanın, ancak python3 genellikle Python 3.x için önerilen komuttur).

  2. Kodu kopyalayıp doğrudan interaktif oturuma yapıştırın (aşağıdaki kod)

b kuşu: Python betik dosyasına yazma

  1. Nano gibi bir metin düzenleyici kullanarak yeni bir dosya oluşturun
    nano remove_file.py
  2. Aşağıdaki kodu kopyalayıp dosyaya yapıştırın (kod aşağıda)
  3. Artık Python betiğinizi terminalden çalıştırabilirsiniz
    python3 remove_file.py

Tek bir dosyayı kaldırma

import os
file_path = 'example.txt'
try:
os.remove(file_path)
print(f'Successfully deleted {file_path}')
except FileNotFoundError:
print(f'The file {file_path} does not exist')
except PermissionError:
print(f'Permission denied: unable to delete {file_path}')
except Exception as e:
print(f'An error occurred: {e}')

Çıktı:

Boş bir dizini silme

Adım 1: Bir dizin oluşturun

İlk olarak, example_dir adında boş bir dizin oluşturun. Bu, aşağıdaki komut kullanılarak yapılabilir

mkdir example _dir

Adım 2: Bir Python betiği oluşturun

Şimdi boş dizini silecek kodu içerecek bir Python betiği oluşturmanız gerekiyor. Betiği oluşturmak için nano gibi bir metin düzenleyici kullanabilirsiniz

  1. Nano’yu açın ve yeni bir Python dosyası oluşturun
    nano remove_directory.py
  2. Aşağıdaki kodu kopyalayıp dosyaya yapıştırın (kod aşağıda)
  3. Şimdi yeni oluşturduğunuz Python betiğini çalıştırın
    python3 remove_directory.py

###ATP_PRO_NOTR_8_CODE_TAG_NOTR_ATP_PRO##Çıktı

Shutil modülünü kullanma

Adım 1: İçeriğiyle birlikte bir dizin oluşturun

İlk olarak, example_dir_with_content adında bir dizin oluşturun ve içine bazı dosyalar ekleyin. Bu işlem aşağıdaki komutlar kullanılarak yapılabilir

mkdir example_dir_with_content
touch example_dir_with_content/file1.txt
touch example_dir_with_content/file2.txt

Adım 2: Bir Python betiği oluşturun

Şimdi dizini ve içeriğini silecek kodu içeren bir Python betiği oluşturmanız gerekiyor. Betiği oluşturmak için nano gibi bir metin düzenleyici kullanabilirsiniz

  1. Nano’yu açın ve yeni bir Python dosyası oluşturun
    nano remove_directory_content.py
  2. Aşağıdaki kodu kopyalayıp dosyaya yapıştırın (kod aşağıda)
  3. Şimdi yeni oluşturduğunuz Python betiğini çalıştırın
    python3 remove_directory_content.py

İçeriğe sahip dizinleri kaldırmak için shutil.rmtree() işlevini kullanın

###ATP_PRO_NOTR_12_CODE_TAG_NOTR_ATP_PRO##Çıktı

Pathlib modülünü kullanma

thepathlibmodülü dosya sistemi yolları için modern bir arayüz sağlar

Dosya silme

###ATP_PRO_NOTR_13_CODE_TAG_NOTR_ATP_PRO##Çıktı

Boş bir dizini silme

###ATP_PRO_NOTR_14_CODE_TAG_NOTR_ATP_PRO##Çıktı :

Zarif hata işleme

Dosya işlemleriyle çalışırken, programın çökmesini önlemek için istisnaları incelikle ele almak çok önemlidir. Yaygın istisnalar şunları içerir

  • FileNotFoundError: Var olmayan bir dosya veya dizin silinmeye çalışıldığında ortaya çıkar.
  • PermissionError: Bir kullanıcı bir dosya veya dizini silmek için gerekli izinlere sahip olmadığında ortaya çıkar.
  • OSError: Boş olmayan bir dizini silme girişimi de dahil olmak üzere işletim sistemiyle ilgili çeşitli hatalar oluştuğunda ortaya çıkar.

Sonuç

Bu eğitimde, dosya ve dizinleri silmek için os, shutil ve pathlib gibi Python modüllerinin nasıl kullanılacağını ele aldık. Her modülün kendine özgü avantajları vardır ve bunları etkili bir şekilde nasıl kullanacağınızı anlamak, uygulamalarınızda dosya sistemlerini yönetme becerinizi artıracaktır. Bu tekniklerde ustalaşarak, dosya yönetimi görevlerini otomatikleştirebilecek, dosyalarla daha sezgisel bir şekilde çalışabilecek ve dosya sistemiyle etkileşime giren sağlam komut dosyaları yazabileceksiniz

Tüm Barındırma hizmetlerimizde becerilerinizi test edin ve % 15 indirim kazanın!

Ödeme sırasında kodu kullanın:

Skills