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

Zahl um 1 erhoehen in vbs oder bat

Mitglied: bruce.one

bruce.one (Level 1) - Jetzt verbinden

17.02.2005, aktualisiert 13.10.2005, 11948 Aufrufe, 2 Kommentare

Auslesen einer Zahl aus einer Datei anschliessend incrementieren

Hallo,

ich habe folgende Problemstellung.

Auslesen einer Zahl aus einer Datei z.B. "last" . Die Datei beinhaltet nur diese eine 4-5 stellige Zahl

Diese Zahl bzw. die Variable in welche sie eingelesen wird um 1 erhoehen und einen rename machen xxxx%variable.exe zu xxxx.exe

Fehlerfall
Schlaegt dieser Vorgang fehl soll er solange wiederholt werden bis eine max. Zahl z.B. 10000 erreicht ist. Dann Ausgabe eines Fehlers in eine LogDatei und per "net send" an 2 Rechner.
Beenden des Scriptes.

Erfolgsfall
Tritt irgendwann bevor die max. Zahl erreicht ist der erfolgsfall ein, möchte ich die Zahl zurück in die Datei schreiben, die ursprüngliche Datei soll überschrieben werden.
Erfolgsmeldung ins Log und "net send" an jene gleiche 2 Rechner.

Hintergrund:
Es wird täglich eine Datei heruntergeladen deren Dateiname abweicht. Sie hat eine laufende Nummer kann aber auch mal um 2 oder 3 Nummern incrementiert werden. Um diese Datei per Script an alle Rechner zu verteilen sollte sie immer den gleichen Namen haben.

Mein frommster Wunsch ist nun dies per Windows batch bzw. cmd zu machen leider liegt dies ausserhalb meiner Fähigkeiten, da es Konstrukte wie ich sie von Pascal kenne nicht gibt (glaub ich) . ( i :=i + 1 ) oder fussgesteuerte Schleifen.

Alternativ wäre auch vbs möglich muss aber auf NT4 laufen.

Wie kann ich so etwas hinbekommen ?? Google war mir nicht sehr hilfreich.

Danke für Eure Mithilfe

gruss bruce
Mitglied: Petrof
17.02.2005 um 16:17 Uhr
Hallo

Wenn es nur eine Datei ist, die dann auch auf dem Quellrechner gelöscht werden kann, hier ein Vorschlag aus dem Win-Total-Forum.


Ich gehe mal davon aus, das es um Dateien innerhalb derselben Arbeitsgruppe geht die verteilt oder irgendwie gesichert werden sollen. So ganz klar ist mir das halt aufgrund der Fragestellung nicht. Ich füge mal eine batch als Beipiel an:

@ECHO OFF
Rem Routine zum sichern eines Ordners auch mit Verzeichnisstruktur in einem anderen Verzeichnis im Netz
Rem oder einer weiteren Partition bzw. Festplatte lokal.
Rem Diese Batch ist einfach in den Ordner zu kopieren, dessen Daten gesichert werden sollen. Wichtig ist,
Rem das der Speicherpfad (z.B "C:\Temp\sicher") für anlegen und löschen noch angepasst bzw. ergänzt werden muss!!!
Rem Ist also nur gedacht, für wichtige Daten, die nicht bereits im Netz oder so gesichert werden.
Rem Die Anzahl der Sicherungen mit name "kopieDATUM" die erhalten bleiben ergibt sich aus Skip=1 oder mehr.
Rem Jxxxxxxxx Fxxxxx 17.01.05
Echo Sichere Verzeichnis
pause
for /f "tokens=1,2,3,4,5" %%a in ('date /t') do set date=%%b
net use T: \\pentium4\aufzeichnung
md T:\aufzeichnung\sicher\kopie%date%
xcopy "*.*" T:\aufzeichnung\sicher\kopie%date%\*.* /c /s /r /y /i
Echo Lösche jetzt das alte Verzeichnis
pause
FOR /F "skip=2 tokens=*" %%a IN ('DIR /O-D /B t:\aufzeichnung\sicher\kopie*') DO (
ECHO Lösche jetzt die alte Sicherung
RD /s /q "t:\Temp\sicher\%%a")
RD /s /q "t:\Temp\sicher\%%a"
net use T: /delete
Ende

So für jeden Rechner in der Arbeitsgruppe muss natürlich dann für net use der entpsrechende Pfad angegeben sein etc. . Selbst bei professioneller Software die zur Verteilung von Softwarepaketen etc. dient - wie z.B. Empirum - muss bekannt sein, welche Rechner in welcher Domäne vorhanden sind und wie/wo installiert werden soll.

Der Ordner auf den bei den Clients kopiert werden soll, muss natürlich freigegeben und der Schreibschutz entfernt sein.

CU
J.F.

PS:
bei

RD /s /q "t:\Temp\sicher\%%a")
RD /s /q "t:\Temp\sicher\%%a"

hatte ich jetzt vergessen den Pfad anzupassen. Müsset
nätürlich in dem Beispiel lauten "t:\aufzeichnung\sicher ....."
Gruss
J.F.



Vieleicht hilft's
Gruß
Peter
Bitte warten ..
Mitglied: bruce.one
18.02.2005 um 15:07 Uhr
also genauer gesagt lade ich immer die sdat42xx.exe von McAfee runter , da sich die Nummer aber immer aendert meist wöchentlich, möchte ich die Datei nach dem DL zu sdat.exe umbenennen um sie dann bei Anmeldung des Benutzer im Silent Mode auszuführen.

Um nicht immer bei null anzufangen zu incrementieren soll die letzte erfolgreiche Zahl aus einer Datei ausgelesen werden.

Nach der Incrementierung soll der Befehl copy sdatVariable.exe sdat.exe ausgeführt werden könnte auch rename sein.
Basierend auf dessen Resultat errorlevel wird im Fehlerfall weiter incrementiert und bei Erfolg wird die Zahl in die Datei zurückgeschrieben, wobei die Datei überschrieben werden soll.

net send und Eintrag in Logdatei.
Fertig.

gruss bruce
Bitte warten ..
Ähnliche Inhalte
Weiterbildung
Bat Dateien
Frage von fajo23Weiterbildung20 Kommentare

Ich habe folgendes Problem. Ich habe auf meiner Festplatte viele Dateinamen die wie folgt aussehen: 20180126 2355 - Dlf ...

Datenbanken
MSSQL Text in Zahl umwandeln
gelöst Frage von EricAG3Datenbanken1 Kommentar

Hallo zusammen, folgende Tabelle sei gegeben. Menge 5,5 2,5 - 2,5 Das Feld Menge ist vom varchar. Ich möchte ...

Batch & Shell
Bat Datei Auführen
gelöst Frage von talaihanBatch & Shell1 Kommentar

Hallo, wie kann man es erreichen das eine Bat Datei auf einem Lokalen Rechner ohne Internetzugriff und ohne zugehörigkeit ...

C und C++
C Sharp. jede zweite Zahl einlesen
gelöst Frage von Doktore1C und C++4 Kommentare

Hallo liebe Gemeinde. Ich möchte gerne mit einer Schleife eine Zeile einlesen. Danach jede zweite Position ausgeben. Als delimiter ...

Neue Wissensbeiträge
Internet

CDU Propaganda: Urheberschutz im Internet - Ende des digitalen Wild-West

Information von Frank vor 8 StundenInternet3 Kommentare

Hallo Administratoren, aus einem Kommentar heraus habe ich folgenden Beiträge von Herr Sven Schulze und Axel Voss (beide CDU ...

Router & Routing

Zyxel VMG 1312 B30A - Firmwareupdate nur im "privaten" Firefox Modus möglich

Tipp von the-buccaneer vor 22 StundenRouter & Routing2 Kommentare

Hatte hier ein Zyxel 1312 das ums verrecken kein Firmwareupdate durchführen wollte. Datei ist auswählbar, dann kommt der Fortschrittskreisel ...

Windows 7

Windows 7 u. Server 2008 (R2) SHA-2-Update kommt am 12. März 2019

Information von kgborn vor 2 TagenWindows 75 Kommentare

Kleine Info für die Admins der oben genannten Maschinen. Ab Juli 2019 werden Updates von Microsoft nur noch mit ...

Firewall
PfSense 2.5.0 benötigt doch kein AES-NI
Information von ChriBo vor 4 TagenFirewall2 Kommentare

Hallo, Wie sich einige hier erinnern werden hat Jim Thompson in diesem Aritkel beschrieben, daß ab Version 2.5.0 ein ...

Heiß diskutierte Inhalte
Hardware
IT-Werkzeugkoffer bis 50,- EUR
gelöst Frage von departure69Hardware53 Kommentare

Hallo. Ich bin als IT-Systembetreuer einer Gemeinde zusätzlich auch der IT-Systembetreuer einer Grund- und Hauptschule. Dort muß ich jedoch ...

Netzwerke
Verteilung von Programmdaten außerhalb des internen Netzwerkes
Frage von mertaufmbergNetzwerke27 Kommentare

Guten Morgen liebe Administratoren, ich versuche zurzeit eine möglichst sichere und einfache Lösung zu suchen, um ein Programmverzeichnis über ...

Datenbanken
PHP Fatal error: Uncaught Error: Call to undefined function oci connect
Frage von PlanitecXDatenbanken19 Kommentare

Hallo Zusammen, ich sitze seit Tagen am Problem das ich keine PHP Anwendung mit Anbindung zu Oracle zum laufen ...

Hardware
PC im Selbstbau, Workstation, mittelklasse Gaming
gelöst Frage von MrRobot1997Hardware19 Kommentare

Hallöchen Leute, ich bin seit einigen Jahren leider nicht mehr wirklich im Bild, wenn es um die Hardware und ...