Top-Themen

Aktuelle Themen (A bis Z)

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

Per Batch PC Namen in Log datei mitaufnehmen

Mitglied: 14634

14634 (Level 1)

02.12.2011, aktualisiert 16:17 Uhr, 3779 Aufrufe, 3 Kommentare

Hallo zusammen,

ich habe folgendes Script


echo on
for /F %%a IN (Rechner.txt) do call :befehl1 %%a
goto :eof

:befehl1
echo on
REM %%a wird zu %1
call psexec.exe \\%1 systeminfo |find "Systembetriebszeit" >> log.txt

goto :eof


in der Rechner.txt stehen alle PC`s drin die ich überprüfen will die lange sie läuft.
Dieses soll dann in einer log.txt wiedergegeben werden, das passt soweit, es wird wie folgt ausgegeben:

Systembetriebszeit: 9 Tage, 4 Stunden, 16 Minuten, 42 Sekunden

ich hätte aber gerne das davor der PC Name steht, da ich ansonsten dies nicht zuordnen kann.

ich glaube man muss nur %Computer% hinzufügen oder? leider weiß ich auch nicht genau wo.

Kann hier jemand helfen?

Danke für die hilfe

edit:

habe auch diesen Powershell befehl gesehen:

<#
.SYNOPSIS
Demonstrates uptime using WMI
.DESCRIPTION
This script used Win32_ComputerSystem to determine how long your system
has been running. This is a rewrite/improvement of sample 3 at
http://msdn.microsoft.com/en-us/library/aa394591(VS.85).aspx.
.NOTES
File Name : Get-UpTime.ps1
Author : Thomas Lee - tfl@psp.co.uk
Requires : PowerShell V2 CTP3
.LINK
Script Posted to:
http://www.pshscripts.blogspot.com
Original sample posted at:
http://msdn.microsoft.com/en-us/library/aa394591(VS.85).aspx
.EXAMPLE
PS c:\foo> .\Get-UpTime.Ps1
System Up for: 1 days, 8 hours, 40.781 minutes

#>

##
  1. Start of script
##

  1. Helper Function - convert WMI date to TimeDate object
function WMIDateStringToDate($Bootup) {
[System.Management.ManagementDateTimeconverter]::ToDateTime($Bootup)
}

  1. Main script
$Computer = "." # adjust as needed
$computers = Get-WMIObject -class Win32_OperatingSystem -computer $computer

foreach ($system in $computers) {
$Bootup = $system.LastBootUpTime
$LastBootUpTime = WMIDateStringToDate($Bootup)
$now = Get-Date
$Uptime = $now - $lastBootUpTime
$d = $Uptime.Days
$h = $Uptime.Hours
$m = $uptime.Minutes
$ms= $uptime.Milliseconds
"System Up for: {0} days, {1} hours, {2}.{3} minutes" -f $d,$h,$m,$ms
}
  1. End script


hier weiß ich leider nicht wo ich meine Rechner.txt einfügen soll, sodass es das Script erkennt
Mitglied: bastla
02.12.2011 um 16:55 Uhr
Hallo Gl05e!

Du hast doch den Computernamen ohenhin in %1 - daher einfach:
01.
02.
echo %1 
03.
psexec.exe \\%1 systeminfo |find "Systembetriebszeit" 
04.
)>> log.txt
Abgesehen davon ließe sich das auch ganz ohne Unterprogramm erledigen:
01.
@echo off & setlocal 
02.
03.
    for /F %%a IN (Rechner.txt) do ( 
04.
        echo %%a 
05.
        psexec.exe \\%%a systeminfo |find "Systembetriebszeit" 
06.
07.
)>log.txt
oder kürzer:
01.
@echo off & setlocal 
02.
(for /F %%a IN (Rechner.txt) do (echo %%a & psexec.exe \\%%a systeminfo |find "Systembetriebszeit"))>log.txt
Grüße
bastla
Bitte warten ..
Mitglied: 14634
05.12.2011 um 09:31 Uhr
Danke, da schaut ja super aus,

eine Frage noch, wenn ich das Script ausführe kommt es wie folgt im Log raus:

PCname
Systembetriebszeit: 11 Tage, 21 Stunden, 41 Minuten, 6 Sekunden

kann man es so umändern, das alles in einer Zeile raus kommt?
Bitte warten ..
Mitglied: bastla
05.12.2011 um 16:11 Uhr
Hallo GlO5e!

Aufgrund der Art, wie "systeminfo.exe" die Daten ausgibt, würde ich als Workaround eine Temp-Datei verwenden:
01.
@echo off & setlocal 
02.
set "UT=%temp%\UpTime.txt" 
03.
(for /F %%a IN (Rechner.txt) do ( 
04.
    psexec \\%%a systeminfo|find "Systembetriebszeit">%UT% 
05.
    <nul set /p=%%a; 
06.
    type %UT% 
07.
))>log.txt
Als (ungetestete) Alternative könntest Du auch WMIC verwenden (dann bräuchtest Du kein "psexec"; auf die Idee gebracht haben mich - natürlich - die Scripting Guys):
01.
@echo off & setlocal enabledelayedexpansion 
02.
(for /F %%a IN (Rechner.txt) do ( 
03.
    for /f "tokens=2 delims==" %%i in ('wmic /node:%%a path Win32_PerfFormattedData_PerfOS_System get systemuptime /value') do set "UpTime=%%i" 
04.
    set /a UpDays=!UpTime!/86400 
05.
    set /a UpTime=!UpTime!%%86400 
06.
    set /a UpHours=!UpTime!/3600 
07.
    set /a UpTime=!UpTime!%%3600 
08.
    set /a UpMinutes=!UpTime!/60 
09.
    set /a UpSeconds=!UpTime!%%60 
10.
    echo %%a;!UpDays! Tage !UpHours! Stunden !UpMinutes! Minuten !UpSeconds! Sekunden 
11.
))>log.txt
... und passend zum Thema:" Geheimnisse von Windows Management Instrumentation" bzw "wie lange läuft der PC"

[Edit] Noch etwas vereinfacht:
01.
@echo off & setlocal enabledelayedexpansion 
02.
(for /F %%a IN (Rechner.txt) do ( 
03.
    for /f "tokens=2 delims==" %%i in ('wmic /node:%%a path Win32_PerfFormattedData_PerfOS_System get systemuptime /value') do set "UpTime=%%i" 
04.
    set /a UpDays=!UpTime!/86400 
05.
    set /a UpHours=!UpTime!/3600%%24 
06.
    set /a UpMinutes=!UpTime!/60%%60 
07.
    set /a UpSeconds=!UpTime!%%86400%%60 
08.
    echo %%a;!UpDays! Tage !UpHours! Stunden !UpMinutes! Minuten !UpSeconds! Sekunden 
09.
))>log.txt
[/Edit]

Grüße
bastla
Bitte warten ..
Ähnliche Inhalte
Windows Server
Log-Datei via Batch auslesen
gelöst Frage von Ironhead-HaynsWindows Server3 Kommentare

Hallo zusammen, ich drehe mich mal wieder im Kreis und komme durch den Wald vor lauter Bäumen nicht durch! ...

Batch & Shell
Ordner und Datei Name gleich (BATCH)
gelöst Frage von clragonBatch & Shell12 Kommentare

Hey Leute. Simples Problem; Bat to Exe Converter ist nicht sehr sauber. Trotzdem nützlich. Es räumt die Dateien und ...

Netzwerkmanagement
Batch Datei auf anderem PC öffnen
gelöst Frage von FlodscheNetzwerkmanagement35 Kommentare

Hallo, Folgende Situation: Wir haben einen Schulungsraum mit mehreren Schulungs PC's und mit einem Master PC. Von diesem Master ...

Batch & Shell

Dateien mit fast gleichem Namen per Batch zippen

Frage von tiolocoBatch & Shell5 Kommentare

hallo, ich bin neu hier und ein absoluter laie was solche dinge betrifft. hab auch versucht evtl. eine lösung ...

Neue Wissensbeiträge
Windows 10

USB Maus und Tastatur versagen Dienst unter Windows 10

Erfahrungsbericht von hardykopff vor 1 TagWindows 105 Kommentare

Da steht man ziemlich dumm da, wenn der PC sich wegen fehlender USB Tastatur und Maus nicht bedienen lässt. ...

Administrator.de Feedback
Update der Seite: Alles zentriert
Information von Frank vor 1 TagAdministrator.de Feedback18 Kommentare

Hallo User, die größte Änderung von Release 5.8 ist das Zentrieren der Webseite (auf großen Bildschirmen) und ein "Welcome"-Teaser ...

Humor (lol)

WhatsApp-Nachrichten endlich auch per Bluetooth versendbar

Information von BassFishFox vor 2 TagenHumor (lol)4 Kommentare

Genau darauf habe ich gewartet! ;-) Der beliebte Messaging-Dienst WhatsApp erhält eine praktische neue Funktion: Ab dem nächsten Update ...

Google Android

Googles "Android Enterprise Recommended" für Unternehmen

Information von kgborn vor 2 TagenGoogle Android3 Kommentare

Hier eine Information, die für Administratoren und Verantwortliche in Unternehmen, die für die Beschaffung und das Rollout von Android-Geräten ...

Heiß diskutierte Inhalte
Windows Netzwerk
WSUS4 und Windows 10 Updates automatisch installieren
Frage von sammy65Windows Netzwerk15 Kommentare

Hallo miteinander, ich habe mit einen neuen WSUS Server aufgesetzt Server 2016 darauf einen aktuellen WSUS. Grund, wir stellen ...

Speicherkarten
Vergessliche USB-Sticks?
Frage von hanheikSpeicherkarten14 Kommentare

Ich habe in den letzten Tagen 500 USB-Sticks mit Bilddateien bespielt. Obwohl ich die Dateien mit größter Sorgfalt kopiert ...

Hyper-V
Hyper-V mit altem XEON-Server. Was ist falsch?
Frage von LollipopHyper-V11 Kommentare

Hallo Bin etwas frustriert. Kleinbetrieb, ca. 15 PC's, 2 Stk. Server mit einigen virtuellen PC's für Fernwartung, VaultServer für ...

Windows Server
NTFS Berechtigungen Ordnerstruktur
Frage von hukahu23489Windows Server11 Kommentare

Hallo, ich bin seit kurzem in einer neuen IT-Abteilung und bin über das Berechtigungskonzept des Unternehmens sehr schockiert. Ich ...