.. | ||
loesung-in-powershell | ||
README.md |
M122 - Übungen
Dateien und Verzeichnisse anlegen
Ich habe den Bedarf, für alle Lernenden einer Klasse dieselben Dateien zur Verfügung zu stellen. Es gibt mehrere Klassen. Die Lernenden bekommen alle ein eigenes Verzeichnisse. Und jede Klasse bekommt ein Verzeichnis. In diesem Klassen- Verzeichnis sind dann die Lernenden-Verzeichnisse gesammelt. In jedem dieser Lernenden-Verzeichnisse werden dann die gewünschten Dateien zur Verfügung gestellt.
Ich bereite mich so vor, dass ich eine Liste mit allen Namen aller Lernenden habe. Diese mache ich dann ein eine Datei. Diese Datei bekommt den Namen (die Abkürzung) der Klasse.
Weiter werde ich ein Verzeichnis namens "_template" bereitstellen. Da drin werden dann alle Dateien hineingelegt, die allen Lernenden zur Verfügung gestellt werden sollen.
Strategie (Programmablauf)
Das automatisierte Skript muss jetzt den Dateinamen (vor dem Punkt) auslesen um damit das Grundverzeichnis anzulegen. Dann muss das Skrpt die Datei öffnen und alle Namenseinträge auslesen. Die Namen sind in einer Liste, die ich dann als "array" verwenden werde um mit jedem (Namens-)Eintrag erstens ein Verzeichnis zu erstellen und zweitens die Dateien aus dem Template dort hinein zu kopieren.
Erstellen Sie als Ausgangslage folgende Dateien und Verzeichnisstruktur
./M122-AP22b.txt
./_template
Datei-1.txt
Datei-2.docx
Datei-3.pdf
Der Inhalt der M122-AP22b.txt Datei könnte so aussehen:
Amherd
Baume
Berset
Cassis
Keller
Parmelin
Roesti
Es soll nachher eine solche Struktur entstehen:
./M122-AP22b
Amherd
Datei-1.txt
Datei-2.docx
Datei-3.pdf
Baume
Datei-1.txt
Datei-2.docx
Datei-3.pdf
Berset
Datei-1.txt
Datei-2.docx
Datei-3.pdf
usw.
Erstellen Sie ein Skript, das diese Aufgabe erledigt.
Hier eine Lösung in **PowerShell**.
Versuchen Sie alles in bash nachzumachen. Aber Achtung. Manche Dinge kann man oder muss man in bash anders machen.
./loesung-in-powershell/einstieg-prepareFiles-01.ps1 ./loesung-in-powershell/einstieg-prepareFiles-02.ps1 ./loesung-in-powershell/einstieg-prepareFiles-03.ps1 ./loesung-in-powershell/einstieg-prepareFiles-04.ps1 ./loesung-in-powershell/einstieg-prepareFiles-05.ps1 ./loesung-in-powershell/einstieg-prepareFiles-06.ps1 ./loesung-in-powershell/einstieg-prepareFiles-07.ps1