Ich möchte ein Shell-Skript schreiben, um alle Dateien, die mit .tif enden, in ein bestimmtes Verzeichnis und alle seine Unterverzeichnisse in eine CSV-Datei zu schreiben.
Das Verzeichnis enthält verschiedene Unterverzeichnisse und diese können auch ZIP-Ordner enthalten, sodass das Skript auch die Namen aus ZIP-Ordnern extrahieren kann.
Ich habe zuerst darüber nachgedacht, diese Schritte zu trennen (Entpacken und Abrufen der Dateinamen), bin mir aber nicht sicher, ob dies wirklich notwendig ist.
Da ich wirklich neu in der Arbeit mit der Shell bin, wäre jede Hilfe dankbar.
command-line
Joschi
quelle
quelle
Antworten:
Um nach
.tif
Dateien in einem Ordner und seinen Unterordnern zu suchen und die Ausgabe in eine.csv
Datei zu schreiben , können Sie den folgenden Befehl verwenden:Um auch in
.zip
Dateien zu suchen und die Ausgabe an die vorherige Datei anzuhängentif_filenames.csv
, können Sie Folgendes verwenden:Wo
process
ist die folgende Bash-Funktion:Quelle: https://unix.stackexchange.com/a/12048/37944
quelle
*.tif
statt sein*.sh
. Ist es nicht?.sh
Dateien getestet .Sie können den unten angegebenen Code verwenden.
Speichern Sie die Datei beispielsweise
find_tif.sh
in dem Verzeichnis, in dem sich alletif
Dateien und Unterverzeichnisse befinden. Gib ihm die ausführbare Erlaubnis.Verwendung
quelle