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
- Yazarak etkileşimli bir Python oturumu açın
(Python sisteminizde bu şekilde yapılandırılmışsa python kullanın, ancak python3 genellikle Python 3.x için önerilen komuttur).
- Kodu kopyalayıp doğrudan interaktif oturuma yapıştırın (aşağıdaki kod)
b kuşu: Python betik dosyasına yazma
- Nano gibi bir metin düzenleyici kullanarak yeni bir dosya oluşturun
- Aşağıdaki kodu kopyalayıp dosyaya yapıştırın (kod aşağıda)
- Artık Python betiğinizi terminalden çalıştırabilirsiniz
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}')