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_test
im Verzeichnis/tmp
erstellen. - Ü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_test
mit dem Befehlls
auf 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 -h
an.
- 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.py
innerhalb 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