Hallo Leute, Ich hätte gerne ein Shell Skript das ein Verzeichnis überwacht. An das Skript wird der Pfad zu dem zu überwachenden Verzeichnis und eine Zeichenkette übergeben. Danach gibt das Programm für dieses Verzeichnis jeweils im Abstand von fünf Sekunden folgende Informationen aus: 1. die fünf größten Dateien (oder weniger, falls keine fünf Dateien vorhanden), 2. zweitens: die fünf (oder weniger, falls weniger davon vorhanden) Dateien die zuletzt modifiziert wurden unter den Dateien, die mit einer Zeichenkette beginnen, die als zweiter Parameter übergeben wurde.
zu1.also die dateien der größe nach sortieren kann ich ja mit dem befehl ls -S aber wie sorge ich dafür das nur die 5 größten dateien angezeigt werden?
zu2.die dateien die zuletzt modifiziert wurden kann ich ja ausgeben mit ls -t aber wie zeige ich nur die an die mit der zeichenkette beginnen die ich als parameter übergeben habe?
mein mini skript zum testen funktioniert schon nicht -.- es lautet:
1 2 3 | #!/bin/bash echo Liste der Dateien der größe nach sortiert: ls -S |
als Fehler erhalte ich ls:Ungültige Option --
und wenn ich zb. sleep 5 schreibe oder sleep 5s oder sleep 5 s klappt das auch nicht
die Aufgabe an sich ist nicht schwer aber bin ganz neu in diesem Thema wenn einer von euch eine mögliche Lösung aufzeigen könnte wäre das bestimmt sehr lehrreich für mich.
Danke und Gruß vom noob.sh
Bearbeitet von sebix:
Codeblock eingefügt.