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
GELÖST

Batch, counter (in txt dokoument einfügen)

Frage Entwicklung Batch & Shell

Mitglied: carp-catcher

carp-catcher (Level 1) - Jetzt verbinden

19.07.2011 um 08:32 Uhr, 3144 Aufrufe, 5 Kommentare

Ein script um ein Protokoll zu schreiben.

hallo,
ich habe mir mal was gebastelt und zwar eine batch datei,
mit der man den PC herunterfahren kann und dann datum und zeit in ein protokoll übertragen werden.(txt dokument)
Sieht so aus:

@echo off
echo in wie viel sekunden soll heruntergefahren werden ?
set /p nachricht=Bitte eingeben:
shutdown -s -t %nachricht%
echo C:\Users\laurenz\Desktop\zickzack.txt
echo _____________________________________ >> zickzack.txt
echo PC sollte am %date% >> zickzack.txt
echo um %time% heruntergefahren werden. >> zickzack.txt
echo nach %nachricht% sekunden >> zickzack.txt
exit

im txt dokument sieht das so auß:
_____________________________________
PC sollte am 18.07.2011
um 20:01:20,01 heruntergefahren werden.
nach 2 sekunden
_____________________________________
PC sollte am 18.07.2011
um 20:01:24,86 heruntergefahren werden.
nach 6 sekunden


es sollte aber noch mit einem Zähler versehen sein.
also in etwa so aussehen:

_____________________________________
1.
PC sollte am 18.07.2011
um 20:01:20,01 heruntergefahren werden.
nach 2 sekunden
_____________________________________
2.
PC sollte am 18.07.2011
um 20:01:24,86 heruntergefahren werden.
nach 6 sekunden

das der dann halt immer so weiterzählt.

Wenn jemand eine Lösung weiß bitte sagen.
Wenns garnet möglich ist bitte auch sagen, dann brauch ich mir net mehr den kopf drüber zu zerbrechen.

Ich danke euch im vorraus

LG
Mitglied: Friemler
19.07.2011 um 11:35 Uhr
Hallo carp-catcher,

teste mal folgendes:
01.
@echo off & setlocal 
02.
 
03.
 
04.
set "ProtocolFile=%UserProfile%\Desktop\zickzack.txt" 
05.
 
06.
 
07.
echo In wieviel Sekunden soll heruntergefahren werden? 
08.
set /p "delay=Bitte eingeben: " 
09.
 
10.
 
11.
::Wenn das Script zum ersten mal gestartet wird, existiert die Protokolldatei 
12.
::noch nicht. Deshalb eine leere Datei anlegen, damit die folgenden Schleifen 
13.
::keine Fehler verursachen und den Zähler auf eins setzen (für den ersten Eintrag). 
14.
if not exist "%ProtocolFile%" ( 
15.
  type NUL > "%ProtocolFile%" 
16.
  set "Cntr=1" 
17.
18.
 
19.
::Nach der Nummer der letzten Zeile suchen, die mit einem "_" beginnt 
20.
::Diese Nummer um eins erhöht ist die Zeile mit dem Zähler 
21.
for /f "delims=:" %%c in ('findstr /b /n /l "_" "%ProtocolFile%"') do ( 
22.
  set /a "LastEntry=%%c+1" 
23.
24.
 
25.
::Protokolldatei vollständig einlesen 
26.
::Wenn die eben bestimmte Zeile gelesen wird, 
27.
::den Zähler auslesen und um eins erhöhen 
28.
for /f "tokens=1,2 delims=:." %%l in ('findstr /n "^" "%ProtocolFile%"') do ( 
29.
  if "%%l" equ "%LastEntry%" set /a "Cntr=%%m+1" 
30.
31.
 
32.
 
33.
>>"%ProtocolFile%" echo _ 
34.
>>"%ProtocolFile%" echo %Cntr%. 
35.
>>"%ProtocolFile%" echo PC sollte am %date% 
36.
>>"%ProtocolFile%" echo um %time% heruntergefahren werden. 
37.
>>"%ProtocolFile%" echo Nach %delay% Sekunden. 
38.
 
39.
echo shutdown -s -t %delay%
Hilfe zum FINDSTR-Befehl liefert findstr /?, zum FOR-Befehl siehe for /? bzw. mein Tutorial zur FOR-Schleife.

Gruß
Friemler
Bitte warten ..
Mitglied: Skyemugen
19.07.2011 um 11:53 Uhr
Aloha,

nun entweder so:
01.
@echo off & setlocal 
02.
set "Z=C:\Users\laurenz\Desktop\Anzahl.txt" 
03.
set /a Anzahl=0 
04.
if exist "%Z%" set /p Anzahl=<"%Z%" 
05.
set /a Anzahl+=1 
06.
>"%Z%" echo %Anzahl% 
07.
 
08.
echo In wie vielen Sekunden soll heruntergefahren werden ? 
09.
set /p nachricht=Bitte eingeben: 
10.
shutdown -s -t %nachricht% 
11.
echo C:\Users\laurenz\Desktop\zickzack.txt 
12.
(echo _  
13.
echo %Anzahl% 
14.
echo PC sollte am %date% 
15.
echo um %time% heruntergefahren werden. 
16.
echo nach %nachricht% Sekunden 
17.
echo\)>>"zickzack.txt" 
18.
goto :eof
oder eben so:
01.
@echo off & setlocal enabledelayedexpansion 
02.
set "D=C:\Users\laurenz\Desktop\zickzack.txt" 
03.
if exist "%D%" (goto :Zahl) else (goto :Datei) 
04.
set /a Anzahl=0 
05.
 
06.
:Zahl 
07.
for /f "usebackq" %%s in ("%D%") do ( 
08.
set Var=%%s 
09.
set "Anzahl=!3!" 
10.
set "3=!2!" 
11.
set "2=!1!" 
12.
set "1=!Var!" 
13.
14.
 
15.
:Datei 
16.
set /a Anzahl+=1 
17.
 
18.
echo In wie vielen Sekunden soll heruntergefahren werden ? 
19.
set /p nachricht=Bitte eingeben: 
20.
shutdown -s -t %nachricht% 
21.
echo C:\Users\laurenz\Desktop\zickzack.txt 
22.
(echo _  
23.
echo %Anzahl% 
24.
echo PC sollte am %date% 
25.
echo um %time% heruntergefahren werden. 
26.
echo nach %nachricht% Sekunden 
27.
echo\)>>"zickzack.txt" 
28.
goto :eof
greetz André

edit: genau wie gestern; kurz mal am Telefon *gg* schon friemelt sich jemand zwischen, hehe
Bitte warten ..
Mitglied: carp-catcher
19.07.2011 um 13:52 Uhr
hey,
danke euch beiden
hat super funktioniert , 1000 dank


LG
Bitte warten ..
Mitglied: Friemler
19.07.2011 um 13:58 Uhr
Hallo carp-catcher,

dann markiere doch bitte noch den Beitrag als gelöst.

Gruß
Friemler
Bitte warten ..
Mitglied: carp-catcher
20.07.2011 um 18:58 Uhr
hallo,

oke mach ich
sry bin neu hier

LG
Bitte warten ..
Neuester Wissensbeitrag
Internet

Unbemerkt - Telekom Netzumschaltung! - BNG - Broadband Network Gateway

(3)

Erfahrungsbericht von ashnod zum Thema Internet ...

Ähnliche Inhalte
Batch & Shell
gelöst Mittels Batch alle .txt Dateien eines Verzeichnises ändern (10)

Frage von mttspeedy zum Thema Batch & Shell ...

Batch & Shell
CMD-Batch hilfe: Dateiname zu txt (2)

Frage von Syscore64 zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Windows Server
Outlook Verbindungsversuch mit Exchange (15)

Frage von xbast1x zum Thema Windows Server ...

Grafikkarten & Monitore
Tonprobleme bei Fernseher mit angeschlossenem Laptop über HDMI (11)

Frage von Y3shix zum Thema Grafikkarten & Monitore ...

Microsoft Office
Keine Updates für Office 2016 (11)

Frage von Motte990 zum Thema Microsoft Office ...