added PINC mail script

This commit is contained in:
2025-09-11 09:46:18 +02:00
parent 3d1326daa9
commit 669325fded
2 changed files with 122 additions and 0 deletions
+65
View File
@@ -0,0 +1,65 @@
#!/bin/bash
# Überprüfen, ob ein Parameter übergeben wurde
if [ -z "$1" ]; then
echo "Bitte geben Sie eine Nummer als Argument an. Beispiel: $0 123"
exit 1
fi
# Definieren Sie die Verbindungsdetails
server="appdb02.in.easyname.com"
username="<deinNESSUSuser>" # Ersetze <deinNESSUSuser> durch Ihren tatsächlichen Benutzernamen
# Remote-Directory überprüfen und Subdirectories auflisten, unter Verwendung von bash
remoteDirectories=$(ssh "$username@$server" "bash -c 'ls -d /Apps/easyname/run/pinc*/*/'")
# Wenn keine Verzeichnisse gefunden wurden, Skript beenden
if [ -z "$remoteDirectories" ]; then
echo "Keine Subdirectories in /Apps/easyname/run/pinc/ gefunden."
exit 1
fi
localSavePath="$PWD/$1" # Setzt den lokalen Speicherpfad relativ zum aktuellen Verzeichnis
filePattern="$1-*"
# Schleife über die gefundenen Verzeichnisse und in jedem Verzeichnis nach Dateien suchen
fileList=""
for dir in $remoteDirectories; do
# Suche in jedem Verzeichnis nach Dateien mit dem angegebenen Muster
filesInDir=$(ssh "$username@$server" "bash -c 'find $dir -type f -name \"$filePattern\"'")
fileList="$fileList $filesInDir"
done
# Prüfen, ob der Befehl erfolgreich ausgeführt wurde
if [ -z "$fileList" ]; then
echo "Fehler beim Ausführen des SSH-Befehls auf dem Remote-Server $server oder keine Dateien gefunden."
exit 1
fi
# Überprüfen, ob Dateien gefunden wurden
if [ -z "$fileList" ]; then
echo "Keine Dateien gefunden, die mit dem Muster $filePattern beginnen."
exit 0
fi
# Prüfen, ob das lokale Speicherverzeichnis existiert, und falls nicht, erstellen
if [ ! -d "$localSavePath" ]; then
echo "Das Verzeichnis $localSavePath existiert nicht. Erstelle es..."
mkdir -p "$localSavePath"
if [ $? -ne 0 ]; then
echo "Fehler beim Erstellen des Verzeichnisses $localSavePath."
exit 1
fi
fi
# Herunterladen der Dateien vom Remote-Server
for file in $fileList; do
scp "$username@$server:$file" "$localSavePath/"
if [ $? -ne 0 ]; then
echo "Fehler beim Herunterladen der Datei $file."
else
echo "Datei $file erfolgreich heruntergeladen."
fi
done
echo "Alle Dateien wurden im Verzeichnis $localSavePath gespeichert."