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

Zeitausgabe ohne vorangestellete Null

Mitglied: florengray

florengray (Level 1) - Jetzt verbinden

31.07.2007, aktualisiert 02.08.2007, 4242 Aufrufe, 6 Kommentare

Hallo,
ich hab schon den Beitrag mit dem Datum gelesen, aber das half mir nicht weiter.

Ich möchte in meinem Schnipsel so etwas wie eine Skriptlaufzeit einbringen.
Dafür muss ich aber mit "Zeit" rechnen.

Mein set /a meckert aber, wenn es z.B. mit 12-08 rechnen muss.

mein Schnipsel: (nur´n Testausschnitt)

set mm1= %time:~9,2%
rem Dazwischen vergeht aber noch Zeit. Nur hier im Testschnipsel nicht.
set mm2= %time:~9,2%


set /a a= %mm2%-%mm1%

echo %a%

Da kommt manchmal so was wie: 1,-69 obwohl da eigentlich 0,irgendwas stehen müsste.

Kann mir da jemand helfen???
Mitglied: Biber
31.07.2007 um 23:25 Uhr
Moin florengray,

im Moment ist es etwas schwierig, auf < code >-Beispiele hier im Forum zu verweisen...
Die meisten werden (vorübergehend) nicht angezeigt wegen dieses ärgerlichen Bugs.

Deshalb würde ich Dich gern mal in ein anderes nettes Forum verweisen:
BatchSkript unter Windows XP/2003 - Knobelaufgabe im MCSEBoard.

Dort ist sowohl dieses "Set /a wirft-Fehler- bei 08/09"-Phänomen beschrieben wie auch Umgehungsstrategien.
Und vor allem auch der Hinweis, das Datumsberechnungen mit CMD.exe-Mitteln und "Set /a" nur Dönekens sind.

Lies dich bitte in den genannten Thread ein - den Rest klären wir dann hier.

Grüße
Biber
Bitte warten ..
Mitglied: florengray
02.08.2007 um 10:46 Uhr
Hallo,
der Link is nicht schlecht.
Nur ich bin noch nicht so fit in Batch! Ich verstehe nicht, was das heißt :~9,2.
Was genau tut jedes Zeichen dort???
Den Syntax habe ich mir von hier kopiert.
Ich bin nur´n Amateur Batcher!!!!
Kannste mir vielleicht erklären was dieser Syntax bedeutet?
Dann klärt sich auch mit Sicherheit, wie ich mein Problem lösen kann.

florengray
Bitte warten ..
Mitglied: Biber
02.08.2007 um 11:48 Uhr
Moin florengray,

diese kryptische Syntax "set mm2= %time:~9,2%" ist nur die CMD-Syntax für eine SubString-Funktionalität.

Am einfachen Beispiel:
01.
Set myVar=test0815 
02.
### Der Variablen myvar wir der String "test0815" zugewiesen 
03.
echo myVar 
04.
### würde "myVar" (genau diesen 5-Zeichen-String) anzeigen 
05.
echo %myvar% 
06.
### würde "test0815" anzeigen
jetzt einen Substring davon:
a) vom Beginn an (=0) die ersten 4 Zeichen -->Ergebnis "test"
01.
echo %myvar:~0,4% 
02.
test
b) vom Ende an die letzten 4 Zeichen
01.
>echo %myvar:~-4% 
02.
0815
Von der aktuellen Zeit (steht IMMER in der Variablen %time% OHNE Dein Zutun) vom 10. Zeichen an 2 Stellen rausflöhen:
01.
>echo Zeit: %time% und jetzt von Zeichen 10 an 2 Stellen: %time:~9,2% 
02.
Zeit: 11:47:35,20 und jetzt von Zeichen 10 an 2 Stellen: 20
01.
>echo Zeit: %time% und jetzt vom Ende an minus 13 Zeichen 2 Stellen: %time:~-13,2% 
02.
Zeit: 11:52:38,19 und jetzt vom Ende an minus 13 Zeichen 2 Stellen: 11
Bitte spiele es mit Deinen Uhrzeit-Einstellungen mal am heimischen CMD-Prompt durch.

Grüße
Biber
Bitte warten ..
Mitglied: florengray
02.08.2007 um 12:12 Uhr
Hallo,
ja das ist genau das was ich wissen wollte! Vielen Dank!
Ich werd es ausprobieren!

Da wir gerade mit Umzug beschäftigt sind, kann es eine Weile dauern bis mein nächster Beitrag kommt!
Also nicht als abgeschlossen ansehen!
Bis bald

florengray
Bitte warten ..
Mitglied: florengray
02.08.2007 um 21:02 Uhr
Hallo
Rechner noch nicht abgebaut!
Eine Frage hab ich noch. Das mit dem Zeit hab ich im Griff!
Wie kann ich z.B. 2839 Millisekunden auf normale Sekunden mit Komma umrechnen?
Ich hab versucht:
set /a laufzeit= %a%/100
--> geht nicht. Kommt nur 0. sollte aber z.B. 0,34 Sekunden kommen.
set /a laufzeit= %a%/0,01
--> geht auch nicht
set /a laufzeit= %a%*(1/100)
--> geht auch nicht
ich hab noch versucht ihm Potenzen beizubringen, aber ich merke, dass er mit den Nachkommastellen ab 0,... nicht zurechtkommt.

Ist das mit Batch realisierbar?
Wenn ja wie?
Freue mich auf Antwort!

Aber Danke schon mal für das mit der Zeit!!!!
Bitte warten ..
Mitglied: Biber
02.08.2007 um 23:32 Uhr
Moin florengray,

ein bisschen verwirrt mich Dein Algorithmus schon mit 2839 Millisecs sind 0,34 sec ?!?.

Na ja, die Mathematik hat sich sicherlich auch weiterentwickelt seit meiner Schulzeit...*seufz*

Aber um auf zwei Teilfragen eine Antwort zu versuchen.

1. Ja, in der Tat: Auf der M$-Shell, also am CMD-Prompt gibt es nur Integer-Quasi-Zahlen.
Keine Nachkommastellen.
Und entsprechend käme bei 50 / 100 nicht 0,5 heraus, sondern 0.
Nicht abgerundet, sondern abgeschnitten.
Ein set /a 999/1000 am CMD-Prompt ergibt 0 und nicht etwa 1 (was 0,999 ja nahelegen würde)
------> Das ist nicht dumm oder blöd oder ärgerlich, sondern das ist einfach so.
Da wir das jetzt alle wissen, dass das nun mal ein reproduzierbares Verhalten bei Verwendung dieses Werkzeugs ist, können wir dementsprechend vorbeugen.

2. Zweite Teilfrage "Ist das mit Batch realisierbar?" --> Alles außer Brotschneiden geht per Batch.

Beispiel:
01.
:: ----Snipp CalcMSecs.bat 
02.
@echo off & setlocal 
03.
If [%1]==[] %0 422839 
04.
REM entweder mit Parameter: 123456 [mSec] aufrufen... 
05.
REM ohne Parmater wird als willkürliches Beispiel 422839 genommen 
06.
Set /a "ms=%1"  
07.
for /f %%i in ('set /a "ms/60000"') do ( 
08.
    for /f %%j in ('set /a "ms %% 60000 / 1000"') do ( 
09.
      For /f %%k in ('set /a "ms %% 1000"') do ( 
10.
        echo %ms% Millisec sind %%i Min %%j,%%k Sec 
11.
))) 
Demo am CMD-Prompt:
01.
(=23:31:27  D:\temp=) 
02.
>e:\Schnipsel\CalsMsecs.bat 333333 
03.
333333 Millisec sind 5 Min 33,333 Sec 
04.
 
05.
(=23:31:28  D:\temp=) 
06.
>e:\Schnipsel\CalsMsecs.bat 654321 
07.
654321 Millisec sind 10 Min 54,321 Sec
So, und nun mach erst Deinen Umzug fertig.... es gibt Wichtigeres im Leben als Bätche..

Grüße
Biber
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Führende Nullen hinzufügen
gelöst Frage von Erik72Batch & Shell6 Kommentare

Hallo ihr Lieben, ich habe folgendes Script und wünsche führende Nullen bei der Ausgabe. Kann mir bitte jemand helfen? ...

Batch & Shell

PDFTK Zeichnungen stempeln mit führender NULL

Frage von Herby-zBatch & Shell4 Kommentare

Hallo zusammen, ich würde gerne mit PDFTK meine Zeichnungen stempeln Die Zeichnungen haben folgendes Format 00026973.pdf, also eine 8-stellige ...

Batch & Shell

Zeitstempel mit führenden Nullen in den Stunden vor 10

gelöst Frage von jan99Batch & Shell4 Kommentare

Moin ! ich generiere einen Zeitstempel wie folgt: FOR /F "tokens=1,2,3,4 delims=/. " %%a in ('date/T') do set CDATE=%%c-%%b-%%a ...

VB for Applications

Access: Spalten ist Anzahl Wenn größer NULL

gelöst Frage von Pilger83VB for Applications11 Kommentare

Hallo zusammen, kurze Frage, wahrscheinlich mega simpl aber komm einfach nicht drauf auch mit google nicht. habe in Access ...

Neue Wissensbeiträge
Humor (lol)

WhatsApp-Nachrichten endlich auch per Bluetooth versendbar

Information von BassFishFox vor 16 StundenHumor (lol)3 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 1 TagGoogle 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 ...

Sicherheit

Intel gibt neue Spectre V2-Microcode-Updates frei (20.02.2018)

Information von kgborn vor 1 TagSicherheit

Intel hat zum 20. Februar 2018 weitere Microcode-Updates für OEMs freigegeben, um Systeme mit neueren Prozessoren gegen die Spectre ...

Microsoft
ARD-Doku - Das Microsoft Dilemma
Tipp von Knorkator vor 1 TagMicrosoft3 Kommentare

Hallo zusammen, vor einigen Tagen lief in der ARD u.a. Reportage. Das Youtube Video dazu dürfte länger verfügbar sein. ...

Heiß diskutierte Inhalte
Server-Hardware
Welche Rolle spielt Design bei Enterprise IT Hardware?
Frage von ApolloXServer-Hardware17 Kommentare

Ich arbeite für einen internationalen Elektronikhersteller in der Forschung und meine Aufgabe ist es, Feedback von Nutzern in Hinsicht ...

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 ...

Switche und Hubs
Cisco SG350X-48 AdminIP in anderes VLAN
Frage von lcer00Switche und Hubs14 Kommentare

Hallo zusammen, ich habe ein Problem mir einem Cisco SG350X-48 bei der Erstinstallation wurde eine IP 192.168.0.254 (Default VLAN ...

Speicherkarten
Vergessliche USB-Sticks?
Frage von hanheikSpeicherkarten13 Kommentare

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