LU08.A01: Arbeiten mit Dateien und Verzeichnissen
Verwende das subprocess-Modul in Python, um mehrere Bash-Befehle auszuführen und die Ergebnisse zu verarbeiten.
Aufgabe
Erstelle ein Python-Skript, das folgende Schritte ausführt:
- Erstellen eines neuen Verzeichnisses:
- Das Skript soll ein neues Verzeichnis mit dem Namen
python_bash_testim Verzeichnis/tmperstellen. - Überprüfe, ob das Verzeichnis erfolgreich erstellt wurde (
ls -l /tmp).
- Erstellen von Dateien im neuen Verzeichnis:
- Erstelle drei leere Dateien (
file1.txt,file2.txt,file3.txt) im Verzeichnispython_bash_test.
- Auflisten der Dateien:
- Liste den Inhalt des Verzeichnisses
python_bash_testmit dem Befehllsauf und geben Sie die Ausgabe in der Konsole aus.
- Dateigröße anzeigen:
- Zeige die Grösse der Dateien in diesem Verzeichnis mit dem Befehl
du -han.
- Zusatz (optional):
- Lösche eine der Dateien (
file3.txt) und geben Sie anschließend die aktualisierte Liste der Dateien aus.
Vorgehen
- Erstelle einen Ordner
exlu08a01. - Erzeuge ein Virtual Environment innerhalb dieses Ordners.
- Aktiviere das Virtual Environment.
- Erstelle eine Datei
main.pyinnerhalb des Ordners.
Beispielcode für den Einstieg
Hier ist der Aufbau des Skripts als Orientierungshilfe:
import subprocess def create_directory(directory_name): """ Creates a new directory """ pass def create_files(directory_name, file_names): """ Creates all files in the list """ pass # Functions for steps 3-5 if __name__ == '__main__': directory = 'python_bash_test' files = ['file1.txt', 'file2.txt', 'file3.txt'] create_directory(directory) create_files(directory, files) # call functions for step 3-5
Erwartete Ergebnisse
Beim Ausführen des Skripts sollte die Konsole folgendes ausgeben:
Nach Schritt 1:
Verzeichnis 'python_bash_test' erfolgreich erstellt.
Nach Schritt 2:
Datei 'python_bash_test/file1.txt' erfolgreich erstellt. Datei 'python_bash_test/file2.txt' erfolgreich erstellt. Datei 'python_bash_test/file3.txt' erfolgreich erstellt.
Nach Schritt 3 (Liste der Dateien):
Dateien im Verzeichnis 'python_bash_test': file1.txt file2.txt file3.txt
Nach Schritt 4 (Dateigröße):
Größen der Dateien im Verzeichnis 'python_bash_test': 0B file1.txt 0B file2.txt 0B file3.txt
