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

Logfile anlegen bevor eine batch ausgeführt wird

Frage Entwicklung Batch & Shell

Mitglied: 84075

84075 (Level 2)

04.08.2010, aktualisiert 18.10.2012, 2576 Aufrufe, 16 Kommentare

Hallo Leute,

mit dem folgendem Skript stoppe ich bestimmte Lizenzdienste die sich im genannten Verzeichnis befinden. Wird der Lizezdienst gestartet so wird auch eine Logfile in dem Verzeichnis abgelegt das man sich ausgesucht hat. Die logfile heisst dasnn license.log

So nun möchte ich aber wenn ich den Lizenzdienst stoppe mit dem folgendem batch das er mir davor die aktuelle Logfile sichert mit einem Timestamp. Zweck ist es das die Logfile nicht überschrieben wird wenn ich den Dienst stoppe (somit wären ältere Log-Einträge weg).

Skript zum stoppen von Services die im Verzeichnis E:\flexlm liegen:
01.
@echo off & setlocal 
02.
echo SERVICES: 
03.
dir E:\flexlm/b /AD 
04.
SET /p servicename=Bitte geben Sie den Service ein den Sie stoppen wollen: 
05.
dir E:\flexlm/S /AD |find /i "%servicename%"&& goto start 
06.
goto error 
07.
:start 
08.
sc \\server01 stop "%servicename%" 
09.
sc \\server02 stop "%servicename%" 
10.
sc \\server03 stop "%servicename%" 
11.
PAUSE
Mitglied: 84075
04.08.2010 um 10:34 Uhr
reicht das aus wenn ich das ins obige Skript einbaue?
01.
copy license.log >E:\flexlm\SERVICENAME\license_%date%.log
Bitte warten ..
Mitglied: 60730
04.08.2010 um 10:36 Uhr
Moin,

nimm dir mal des Bibers Tutorial Batch for Runaways Part? - werkeln mit Datum vor.

Da beschreibt er vorzügliche alle eventualitäten und Befehle.
Da jetzt für dich einen extract zu bilden, würde den Sinn - der hinter Bibers Tut steht - untergraben.

Gruß

edit - das "könnte", aber näheres findest du in Bibers Tut - denn %date% und %date% auf verschiedenen Maschinen ist nicht immer das gleiche. /edit
Bitte warten ..
Mitglied: Friemler
04.08.2010 um 11:00 Uhr
Hallo cyaency,

naja, wenn müsste es so heißen:
01.
copy E:\flexlm\license.log "E:\flexlm\%SERVICENAME%\license_%date%.log"
Dazu muss der Ordner %SERVICENAME% schon existieren.

Gruß
Friemler
Bitte warten ..
Mitglied: 84075
04.08.2010 um 11:10 Uhr
naja leider klappt das nicht. Er kopiert zwar die log file in das genannte Verzeichnis jedoch mit dem Namen: license_%date%.log. Er schreibt also nicht das Datum rein in den filename sonder %date%
Bitte warten ..
Mitglied: 60730
04.08.2010 um 11:20 Uhr
Moi ihr zwei beiden...


bitte bitte bitte mit 444 Blümchen und 555 Sternchen

Der Biber hat sich mal Mühe gegeben und jeder der das gelesen hat, kann es auch verstehen.
Das alles immer und immer wieder wiederkauen zu müssen ist mühsam und wird Meister Bibers Arbeit nicht gerecht.

Zitat von Friemler:
Hallo cyaency,

naja, wenn müsste es so heißen:
Gruß
Friemler

Nein - siehe Bibers Anleitung - müssen muß da garnix können kann eher sein....

Aber wie jetzt zum 3. Mal des Bibers Tut klärt das alles....

Gruß
edit ich finds ja schön, wenn die beiden mit der meisten Erfahrung in Sachen Fragen stellen, die man im Tiefschlaf beantworten kann - sich gegenseitig helfen wollen - aber nicht wenn es eine 4? <edit> 5 </edit> Jahre alte Anleitung gibt, die alles erklärbärt.
Und wenn Ihr die Anleitung dann gelesen und verstanden habt, das "Voting" bitte nicht vergessen.
/edit
Bitte warten ..
Mitglied: 84075
04.08.2010 um 11:24 Uhr
ich finde zwar tuts von ihm aber keinen abschnitt mit "werkeln mit Datum"
Bitte warten ..
Mitglied: 60730
04.08.2010 um 11:29 Uhr
Zitat von 84075:
ich finde zwar tuts von ihm aber keinen abschnitt mit "werkeln mit Datum"
????

Nachdem du heute eben gerade erfolgreich den Kurs:
  • Wie lasse ich andere Leute unentgeltlich für mich suchen
bestanden hast - gehts morgen weiter bei den Kursen:

  • Wo ist der Einschalter meines Computers und was passiert, wenn ich Ihn benutze
  • Wenn das geklappt hat, dann gibts den Folgekurs Suchfunktion für Administratoren.

Gruß
Bitte warten ..
Mitglied: 84075
04.08.2010 um 11:33 Uhr
wollte es damit machen:

01.
@echo off & setlocal 
02.
 
03.
REM Datumsvariablen systemspezifisch aufbereiten 
04.
if %windir%==C:\WINNT   for /f "tokens=2-4 delims=. " %%a in ('date /t') do set dd=%%a&set mm=%%b&set yyyy=%%c 
05.
if %windir%==C:\WINDOWS for /f "tokens=1-3 delims=. " %%a in ('date /t') do set dd=%%a&set mm=%%b&set yyyy=%%c 
06.
if %windir%==C:\WINDOWS for /f "tokens=1-2 delims=: " %%a in ('time /t') do set hh=%%a&set mi=%%b 
07.
 
08.
echo SERVICES: 
09.
dir E:\flexlm /b /AD 
10.
SET /p servicename=Bitte geben Sie den Service ein den Sie stoppen wollen: 
11.
dir E:\flexlm /S /AD |find /i "%servicename%"&& goto start 
12.
goto error 
13.
:start 
14.
xcopy E:\flexlm\%servicename%\license.log E:\flexlm\%servicename%\license.log_%date%\ 
15.
sc \\server01 stop "%servicename%" 
16.
sc \\server02 stop "%servicename%" 
17.
sc \\server03 stop "%servicename%" 
18.
PAUSE 
19.
 
20.
 
Nun erzeugt er mir ja ein Verzeichnis mit Datum...Nur würde ich gerne kein Verzeichnis angelegt bekommen sondern das der Filename so genändert wird das das Datum im Dateinamen drinsteht
Bitte warten ..
Mitglied: 60730
04.08.2010, aktualisiert 18.10.2012
Zitat von 84075:
wollte es damit machen:

01.
> @echo off & setlocal

Setzen 6.
Bitte warten ..
Mitglied: 84075
04.08.2010 um 15:13 Uhr
Habe das ganze nun gelöst noch ne letzt Frage. Wenn ich das Datum definiere gehe ich so vor:
01.
if %windir%==C:\WINDOWS for /f "tokens=1-3 delims=. " %%a in ('date /t') do set dd=%%a&set mm=%%b&set yyyy=%%c
Wenn ich aber die Zeit definieren will, dann geht das so nicht:
01.
if %windir%==C:\WINDOWS for /f "tokens=1-3 delims=. " %%a in ('time /t') do set hh=%%a&set mi=%%b&set
Bitte warten ..
Mitglied: Friemler
04.08.2010 um 15:55 Uhr
Hallo cyaency,

die Option delims der FOR-Schleife legt fest, welches Zeichen in der Ausgabe des Befehls in der Klammer (TIME /t oder DATE /t) als Trennzeichen zwischen den einzelnen Bestandteilen behandelt wird. Beim Datum ist das der Punkt, bei der Zeit der Doppelpunkt. Die Zeile für die Zeit müsste also lauten:

01.
if %windir%==C:\WINDOWS for /f "tokens=1-2 delims=:" %%a in ('time /t') do set hh=%%a&set mi=%%b
Der Befehl TIME /t gibt sowas wie 15:13 zurück, hat also nur zwei Bestandteile (15 und 13), deshalb tokens=1-2.

Das Leerzeichen bei "delims=: " ist überflüssig, da in der Ausgabe garkeine Leerzeichen vorkommen. Ist in der Zeile für das Datum ebenso.

Das zusätzliche &set war wohl ein copy&paste-Fehler.

Gruß
Friemler
Bitte warten ..
Mitglied: 84075
04.08.2010 um 16:03 Uhr
hmmm also irgendwie fügt er mir keine Zeit hinzu, sondern nur das Datum?!?!

01.
@echo off & setlocal 
02.
 
03.
REM Datumsvariablen systemspezifisch aufbereiten: 
04.
if %windir%==C:\WINDOWS for /f "tokens=1-3 delims=. " %%a in ('date /t') do set dd=%%a&set mm=%%b&set yyyy=%%c 
05.
if %windir%==C:\WINDOWS for /f "tokens=1-2 delims=:" %%a in ('time /t') do set hh=%%a&set mi=%%b 
06.
 
07.
echo SERVICES: 
08.
dir C:\flexlm /b /AD 
09.
SET /p servicename=Bitte geben Sie den Service ein den Sie stoppen wollen: 
10.
dir C:\flexlm /S /AD |find /i "%servicename%"&& goto start 
11.
 
12.
goto error 
13.
 
14.
:start 
15.
xcopy C:\flexlm\%servicename%\license.log E:\flexlm\%servicename%\logfiles 
16.
ren C:\flexlm\%servicename%\logfiles\license.log license_%DATE%_%TIME%.log 
17.
 
18.
sc \\server01 stop "%servicename%" 
19.
sc \\server02 stop "%servicename%" 
20.
sc \\server03 stop "%servicename%" 
21.
PAUSE
Bitte warten ..
Mitglied: Friemler
04.08.2010 um 16:22 Uhr
Hallo cyaency,

in Zeile 16 willst du ja Deine Datei umbenennen. Und was steht da? Und in welchen Variablen hast Du Zeit und Datum gespeichert?

Du kannst Dir den REN-Befehl sowieso sparen und das gleich mit XCOPY erledigen.

Gruß
Friemler
Bitte warten ..
Mitglied: 84075
04.08.2010 um 16:37 Uhr
- Datum definiert mit Variable ddmmyyyy ???
- Zeit definiert mit Variable hhmi ???
- REN Befehl entfernt und ins xcopy rein


01.
@echo off & setlocal 
02.
 
03.
REM Datumsvariablen systemspezifisch aufbereiten: 
04.
if %windir%==C:\WINDOWS for /f "tokens=1-3 delims=. " %%a in ('date /t') do set dd=%%a&set mm=%%b&set yyyy=%%c 
05.
if %windir%==C:\WINDOWS for /f "tokens=1-2 delims=:" %%a in ('time /t') do set hh=%%a&set mi=%%b 
06.
 
07.
echo SERVICES: 
08.
dir C:\flexlm /b /AD 
09.
SET /p servicename=Bitte geben Sie den Service ein den Sie stoppen wollen: 
10.
dir C:\flexlm /S /AD |find /i "%servicename%"&& goto start 
11.
 
12.
goto error 
13.
 
14.
:start 
15.
xcopy C:\flexlm\%servicename%\license.log E:\flexlm\%servicename%\logfiles\license_%DATE%_%TIME%.log 
16.
 
17.
sc \\server01 stop "%servicename%" 
18.
sc \\server02 stop "%servicename%" 
19.
sc \\server03 stop "%servicename%" 
20.
PAUSE
Bitte warten ..
Mitglied: 60730
04.08.2010 um 16:51 Uhr
n aaabend,

Zitat von 84075:
- Datum definiert mit Variable ddmmyyyy ???
- Zeit definiert mit Variable hhmi ???
- REN Befehl entfernt und ins xcopy rein


01.
> @echo off & setlocal

sagschreib mal - der Schlauch auf dem du stehst, ist das ein Cat 5e oder schon Cat7?

Kannst du dir vorstellen, dass einige von uns sich köstlich amüsieren und dir keine weiteren Tipps geben - oder denkst du ernsthaft, dir hilft keiner, weil "denen das alles zu hoch ist?"

Du definierst einen Satz Variablen mit der Uhrzeit und wo benutzt du diese frisch gelegten Variablen dann?
Und nein - ich verstehe dein Vorhaben eh nicht - friemler fragt dic h und du antwortest mit ??? - als ob du gar nicht wüßtest, ob die Antwort stimmt.

Da sind meine beiden 11 und 12 Jahren alten Neffen aber etwas schneller
01.
@echo off 
02.
@hallo echo 
03.
@hallo otto 
04.
@habe fertig
Bitte warten ..
Mitglied: Friemler
04.08.2010 um 17:08 Uhr
Hallo cyaency,

jetzt wird's mir auch zu bunt. Starte mal die brain.exe, vielleicht hilft das weiter.

Gruß
Friemler
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(3)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Batch & Shell
Batch Datei wird per Aufgabenplanung nicht ausgeführt (7)

Frage von Corraggiouno zum Thema Batch & Shell ...

Batch & Shell
Batch zum bearbeiten mehrerer CSV (2)

Frage von Matzus87 zum Thema Batch & Shell ...

Batch & Shell
Batch-Variable nach Stichworten aus TXT Datei durchsuchen (3)

Frage von Markus5579 zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
gelöst Server erkennt Client nicht wenn er ausserhalb des DHCP Pools liegt (28)

Frage von Mar-west zum Thema LAN, WAN, Wireless ...

Windows Server
Server 2008R2 startet nicht mehr (Bad Patch 0xa) (18)

Frage von Haures zum Thema Windows Server ...

Outlook & Mail
Outlook 2010 findet ost datei nicht (18)

Frage von Floh21 zum Thema Outlook & Mail ...