mirror of
https://gitlab.com/harald.mueller/aktuelle.kurse.git
synced 2024-11-28 04:31:56 +01:00
98 lines
2.8 KiB
Markdown
98 lines
2.8 KiB
Markdown
# 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.
|
|
|
|
<br>
|
|
<br>
|
|
<br>
|
|
<br>
|
|
<br>
|
|
<br>
|
|
<br>
|
|
<br>
|
|
<hr>
|
|
<br>
|
|
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-01.ps1)
|
|
- [./loesung-in-powershell/einstieg-prepareFiles-02.ps1](./loesung-in-powershell/einstieg-prepareFiles-02.ps1)
|
|
- [./loesung-in-powershell/einstieg-prepareFiles-03.ps1](./loesung-in-powershell/einstieg-prepareFiles-03.ps1)
|
|
- [./loesung-in-powershell/einstieg-prepareFiles-04.ps1](./loesung-in-powershell/einstieg-prepareFiles-04.ps1)
|
|
- [./loesung-in-powershell/einstieg-prepareFiles-05.ps1](./loesung-in-powershell/einstieg-prepareFiles-05.ps1)
|
|
- [./loesung-in-powershell/einstieg-prepareFiles-06.ps1](./loesung-in-powershell/einstieg-prepareFiles-06.ps1)
|
|
- [./loesung-in-powershell/einstieg-prepareFiles-07.ps1](./loesung-in-powershell/einstieg-prepareFiles-07.ps1)
|