Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
modul:m122:learningunits:lu08:aufgaben:dateien [2024/12/02 09:30] msutermodul:m122:learningunits:lu08:aufgaben:dateien [2024/12/10 09:27] (aktuell) – [Beispielcode für den Einstieg] msuter
Zeile 1: Zeile 1:
 ====== LU08.A01: Arbeiten mit Dateien und Verzeichnissen ====== ====== LU08.A01: Arbeiten mit Dateien und Verzeichnissen ======
  
 +<WRAP center round todo 60%>
 +Verwende das ''subprocess''-Modul in Python, um mehrere Bash-Befehle auszuführen und die Ergebnisse zu verarbeiten.
 +</WRAP>
 + 
  
-**Ziel**: Verwenden Sie 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:
  
-#### Aufgabe+  -  **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 Verzeichnis ''python_bash_test''
 +  - **Auflisten der Dateien**: 
 +    * Liste den Inhalt des Verzeichnisses ''python_bash_test'' mit dem Befehl ''ls'' 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.
  
-Erstellen Sie ein Python-Skript, das folgende Schritte ausführt:+===== Vorgehen =====
  
-1**Erstellen eines neuen Verzeichnisses**: +  - Erstelle einen Ordner ''exlu08a01''
-   Das Skript soll ein neues Verzeichnis mit dem Namen `python_bash_test` im aktuellen Verzeichnis erstellen+  Erzeuge ein Virtual Environment innerhalb dieses Ordners
-   Überprüfen Sie, ob das Verzeichnis erfolgreich erstellt wurde.+  Aktiviere das Virtual Environment. 
 +  - Erstelle eine Datei ''main.py'' innerhalb des Ordners. 
 +===== Beispielcode für den Einstieg =====
  
-2. **Erstellen von Dateien im neuen Verzeichnis**: 
-   - Erstellen Sie drei leere Dateien (`file1.txt`, `file2.txt`, `file3.txt`) im Verzeichnis `python_bash_test`. 
  
-3. **Auflisten der Dateien**: +Hier ist der Aufbau des Skripts als Orientierungshilfe:
-   - Listen Sie den Inhalt des Verzeichnisses `python_bash_test` mit dem Befehl `ls` auf und geben Sie die Ausgabe in der Konsole aus.+
  
-4. **Dateigröße anzeigen**: +<code python>
-   - Zeigen Sie die Größe der Dateien in diesem Verzeichnis mit dem Befehl `du -h` an. +
- +
-5. **Zusatz (optional)**: +
-   - Löschen Sie eine der Dateien (`file3.txt`) und geben Sie anschließend die aktualisierte Liste der Dateien aus. +
- +
---- +
- +
-#### Beispielcode für den Einstieg +
- +
-Hier ist der Anfang des Skripts als Orientierungshilfe: +
- +
-```python+
 import subprocess import subprocess
  
-# 1. Verzeichnis erstellen 
 def create_directory(directory_name): def create_directory(directory_name):
-    result = subprocess.run(['mkdir', '-p', directory_name], capture_output=True, text=True) +    """ Creates a new directory """ 
-    if result.returncode == 0: +    pass 
-        print(f"Verzeichnis '{directory_name}' erfolgreich erstellt.") +    
-    else: +
-        print(f"Fehler beim Erstellen des Verzeichnisses: {result.stderr}")+
  
-# 2. Dateien erstellen 
 def create_files(directory_name, file_names): def create_files(directory_name, file_names):
-    for file_name in file_names: +    """ Creates all files in the list """ 
-        file_path = f"{directory_name}/{file_name}" +    pass
-        result = subprocess.run(['touch', file_path], capture_output=True, text=True) +
-        if result.returncode == 0: +
-            print(f"Datei '{file_path}' erfolgreich erstellt."+
-        else: +
-            print(f"Fehler beim Erstellen der Datei '{file_path}': {result.stderr}")+
  
-Weiterer Code für Schritte 3-5 +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-
 +</code> 
 + 
 + 
 + 
 +===== Erwartete Ergebnisse =====
  
-#### Erwartete Ergebnisse 
  
 Beim Ausführen des Skripts sollte die Konsole folgendes ausgeben: Beim Ausführen des Skripts sollte die Konsole folgendes ausgeben:
  
-1. **Nach Schritt 1**+==== Nach Schritt 1: ==== 
-   ```+ 
 +<code>
    Verzeichnis 'python_bash_test' erfolgreich erstellt.    Verzeichnis 'python_bash_test' erfolgreich erstellt.
-   ```+</code> 
 + 
 +==== Nach Schritt 2: ====
  
-2. **Nach Schritt 2**: +<code>
-   ```+
    Datei 'python_bash_test/file1.txt' erfolgreich erstellt.    Datei 'python_bash_test/file1.txt' erfolgreich erstellt.
    Datei 'python_bash_test/file2.txt' erfolgreich erstellt.    Datei 'python_bash_test/file2.txt' erfolgreich erstellt.
    Datei 'python_bash_test/file3.txt' erfolgreich erstellt.    Datei 'python_bash_test/file3.txt' erfolgreich erstellt.
-   ```+</code>
  
-3. **Nach Schritt 3 (Liste der Dateien)**+==== Nach Schritt 3 (Liste der Dateien): ==== 
-   ```+ 
 +<code>
    Dateien im Verzeichnis 'python_bash_test':    Dateien im Verzeichnis 'python_bash_test':
    file1.txt    file1.txt
    file2.txt    file2.txt
    file3.txt    file3.txt
-   ```+</code>
  
-4. **Nach Schritt 4 (Dateigröße)**+==== Nach Schritt 4 (Dateigröße): ==== 
-   ```+ 
 +<code>
    Größen der Dateien im Verzeichnis 'python_bash_test':    Größen der Dateien im Verzeichnis 'python_bash_test':
    0B file1.txt    0B file1.txt
    0B file2.txt    0B file2.txt
    0B file3.txt    0B file3.txt
-   ```+</code>
  
-5. **Nach Schritt 5 (Aktualisierte Liste nach Löschung)**+==== Nach Schritt 5 (Aktualisierte Liste nach Löschung): ==== 
-   ```+ 
 +<code>
    Datei 'python_bash_test/file3.txt' wurde gelöscht.    Datei 'python_bash_test/file3.txt' wurde gelöscht.
    Aktualisierte Dateien im Verzeichnis:    Aktualisierte Dateien im Verzeichnis:
    file1.txt    file1.txt
    file2.txt    file2.txt
-   ``` +</code>
- +
---- +
- +
-#### Bewertungskriterien+
  
-**Korrektheit**: Das Skript führt alle Schritte ohne Fehler aus. +---- 
-**Struktur**Der Code ist modular und klar strukturiert (Verwendung von Funktionen). +{{tag>M122-LU08}} 
-**Fehlerbehandlung**Rückgabecodes und Fehler werden überprüft und ordnungsgemäß verarbeitet.+[[https://creativecommons.org/licenses/by-nc-sa/4.0/|{{https://i.creativecommons.org/l/by-nc-sa/4.0/88x31.png}}]] Marcel Suter
  • modul/m122/learningunits/lu08/aufgaben/dateien.1733128230.txt.gz
  • Zuletzt geändert: 2024/12/02 09:30
  • von msuter