Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Skript zum automatischen Kopiervorgang von täglich erstelle Logdatei über PSCP RSA SSH

Frage Entwicklung Batch & Shell

Mitglied: Sumonah

Sumonah (Level 1) - Jetzt verbinden

09.04.2014 um 11:32 Uhr, 1235 Aufrufe, 2 Kommentare

Hallo Leute,

ich suche nach einen Ansatz für ein Skript, welches vom aktuellen Tag erstellte Logdatei vom entfernten Server in einen gegebenen Pfad abholt und dieses dann auf meinen Lokalen Server speichert.
Der PSCP Vorgang ist dieser:
C:\Users\admin\Desktop>pscp.exe -i "Private-Key" -P "Port" Benutzer@Server:logs/20140401.log C:\Users\admin\Desktop\Logs
Der Dateiname wird nach JahrMonatTag täglich fortlaufend erstellt = 20140401.
Zurzeit liegt logischerweise 20140405.log 20140406.log 20140407.log 20140408.log 20140409.log vor.
Es liegen in diesen Verzeichnis Logs bis zu 5 Tage vor.

Mein Problem ist hier, wie kann ich eine Bedingung erstellen die auf dieses Format prüft und dann nur expliziet vom aktuellen Tag kopiert?!

Mitglied: Sumonah
09.04.2014 um 12:14 Uhr
Das ich z.B. über ein Batch-Skript den Vorgang: C:\Users\admin\Desktop>pscp.exe -i "Private-Key" -P "Port" Benutzer@Server:logs/20140401.log C:\Users\admin\Desktop\Logs
anspreche aber mit der Bedingung: "Nehm doch bitte nur das Logfile vom aktuellen Tag"

Das es dann jeden Tag laufen soll mach ich über die Aufgabenplanung
Bitte warten ..
Mitglied: SaschaRD
11.04.2014, aktualisiert um 08:48 Uhr
Hallo Sumonah,

da Du mit einem exotischen Datumsformat arbeitest 'yyyymmtt', müsste zuerst das Datum für
01.
%date%
formatiert werden.
01.
set mydate=%date:~6,4%%date:~0,2%%date:~3,2% 
02.
echo %mydate%
So erhälst Du das aktuelle Datum in deinem gewünschtem Format.

Das Einlesen der Dateienname ist auch nicht so komplex:
01.
for /f "tokens=1 delims=." %%i in ('dir /a-d /b /o-d %LOG%\*.log') do echo %%i
Was komplexer ist, ist der Vergleich.

Hier könnte ich Dir eine quick and dirty Lösung anbieten.

Setzten deines Datumformates > Einlesen der Log-Dateien > Schreiben des letzten Datums in eine separate Datei > Einlesen des Datums > Vergleichen des Datums:
01.
@echo off 
02.
set log="C:\Skripte\Neuer Ordner" 
03.
set logfile="C:\Skripte\Neuer Ordner\output.properties" 
04.
set datum=%date:~6,4%%date:~3,2%%date:~0,2% 
05.
for /f "tokens=1 delims=." %%i in ('dir /a-d /b /od %LOG%\*.log') do echo %%i > %logfile% 
06.
 
07.
set LineNo=1 
08.
set "LOGNR=" 
09.
set /a LineNo-=1 
10.
FOR /f %%a in ('more/e +%LINENO% ^< %logfile%') do ( 
11.
	IF NOT DEFINED LOGNR set "LOGNR=%%a" 
12.
13.
 
14.
IF /i %LOGNR% GEQ %datum% ( echo %LOGNR% und %datum% sind gleich 
15.
	) ELSE echo %LOGNR% und %datum% sind nicht gleich
Gruß, Sascha

P.S.: Vielleicht hat jemand anderes noch eine bessere/einfachere Lösung.
Bitte warten ..
Ähnliche Inhalte
Windows 7
Kopiervorgang Logdatei (1)

Frage von Riddler123 zum Thema Windows 7 ...

Windows 10
Skript zum Auslesen und Automatischen Versenden von E-Mails (3)

Frage von weber4134 zum Thema Windows 10 ...

Batch & Shell
gelöst Powershell Skript Ordnerinhalt auflisten und per E-Mail verschicken (2)

Frage von xbast1x zum Thema Batch & Shell ...

Datenbanken
MSSQL Management Studio Generiere Skript automatisieren (2)

Frage von lordzwieback zum Thema Datenbanken ...

Neue Wissensbeiträge
Peripheriegeräte

Was beachten bei der Wahl einer USV Anlage im Serverschrank

(5)

Tipp von zetboxit zum Thema Peripheriegeräte ...

Windows 10

Das Windows 10 Creators Update ist auf dem Weg

(5)

Anleitung von BassFishFox zum Thema Windows 10 ...

Administrator.de Feedback

Tipp: Ungelöste Fragen ohne Antwort in Tickeransicht farblich hinterlegen

Tipp von pattern zum Thema Administrator.de Feedback ...

Viren und Trojaner

Neue Magazin Ausgabe: Malware und Angriffe abwehren

Information von Frank zum Thema Viren und Trojaner ...

Heiß diskutierte Inhalte
Windows Systemdateien
Warum System auf "C:" (29)

Frage von DzumoPRO zum Thema Windows Systemdateien ...

LAN, WAN, Wireless
Cisco SG200: Auf bestimmtem vLAN bestimmte TCP-Ports sperren (19)

Frage von SarekHL zum Thema LAN, WAN, Wireless ...

Windows Server
gelöst Update BackupExec 2015 auf 2016 führt zu SQL-Server Problem (16)

Frage von montylein1981 zum Thema Windows Server ...

Batch & Shell
gelöst Batch um Benutzer aus Sitzung abzumelden (15)

Frage von zeroblue2005 zum Thema Batch & Shell ...