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

gelöst Variable soll 4stellig ausgegeben werden

Mitglied: StefanHuber

StefanHuber (Level 1) - Jetzt verbinden

03.06.2012 um 18:16 Uhr, 2858 Aufrufe, 8 Kommentare

Hi,
(ich schon wieder)

Mein Problem: ich will in einem Batchskript eine Zahl 4stellig ausgeben lassen.
Heißt: wenn ich Dateien erstelle, soll die erste Zahl Test_0001.htm heißen, die 2. Test_0002.htm usw...

Wie stelle ich das am dümmsten an?

LG
Mitglied: bastla
03.06.2012 um 18:29 Uhr
Hallo StefanHuber und willkommen im Forum!

An sich etwa so:
01.
@echo off & setlocal enabledelayedexpansion 
02.
for /L %%i in (1,1,100) do ( 
03.
    set /a Nr=10000+%%i 
04.
    echo Test_!Nr:~-4!.htm 
05.
)
Näheres dazu siehe "set /?" - und übrigens: unmittelbar mit der Schleifenvariablen (hier "%%i") geht das nicht ...

Grüße
bastla
Bitte warten ..
Mitglied: StefanHuber
03.06.2012 um 18:49 Uhr
Hi Bastla,

schon mal herzlichen Dank

Doch wie so oft kommt mit der Antwort gleich die nächste Frage...

Wie kann ich mit diesen Zahlen rechnen? Ich will von der Nummer immer gleich die Zahl eins niedriger und eins höher. Ich hätte das so gelöst?! Geht aber leider net
01.
for /L %%i in (1,1,%OBERGRENZE%) do ( 
02.
SET /A ZAEHLER=10000+%%i 
03.
SET /A PREVIOUS=!ZAEHLER:~-4! 
04.
SET /A NEXT=!ZAEHLER:~-4!+1 
05.
)
LG Stefan Huber
Bitte warten ..
Mitglied: bastla
03.06.2012, aktualisiert um 19:29 Uhr
Hallo StefanHuber!

Vielleicht stellt sich die Frage nicht mehr, wenn Du meinen Hinweis bezüglich
set /?
beachtest - ansonsten: Unterscheide zwischen Berechnung und Ausgabe ...

Grüße
bastla
Bitte warten ..
Mitglied: StefanHuber
04.06.2012 um 08:07 Uhr
Hi Bastla,

dann stelle ich mich etwas doof an...

Laut "set /?" steht da, dass

Wenn Sie einen der arithmetischen oder Moduloperatoren verwenden, müssen
Sie die Zeichenfolge für den Ausdruck in Anführungszeichen setzen.

Klappt bei mir aber auch net!

LG Stefan

P.S: beim Quellcode muss bei Previous folgendes stehen.
01.
SET /A PREVIOUS=!ZAEHLER:~-4!-1 
02.
SET /A NEXT=!ZAEHLER:~-4!+1
Bitte warten ..
Mitglied: StefanHuber
04.06.2012 um 10:42 Uhr
Hi, habe es nun wie folgt gelöst
01.
@ECHO off & setlocal enabledelayedexpansion 
02.
TITLE PICS - BATCH 
03.
SET /P OBERGRENZE=Anzahl:  
04.
SET /A "Counter=1" 
05.
SET /A Grenze=%OBERGRENZE%+1 
06.
 
07.
:DATEI-ERSTELLUNG 
08.
SET /A ZAEHLER=10000+%COUNTER% 
09.
SET /A PREVIOUS=9999+%COUNTER% 
10.
SET /A NEXT=%COUNTER%+10001 
11.
 
12.
SET /A "Counter+=1" 
13.
if %COUNTER%==%GRENZE% goto ENDE 
14.
goto DATEI-ERSTELLUNG 
15.
pause 
16.
 
17.
:ENDE 
18.
CLS 
19.
ECHO ENDE 
20.
PAUSE
Bitte warten ..
Mitglied: bastla
04.06.2012 um 10:42 Uhr
Hallo StefanHuber!

Eigentlich war der Hinweis auf die Hilfe für das Verständnis der Teilstringbildung (im konkreten Fall: letzte 4 Zeichen) gedacht - für die Berechnung wird ja der gesamte Wert (also 10000 + lfd Nr) benötigt - ganz einfach daher:
01.
SET /A PREVIOUS=!ZAEHLER!-1 
02.
SET /A NEXT=!ZAEHLER!+1
und erst bei der Verwendung (als Beispiel nochmals eine Ausgabe) das "Abschneiden" der letzten 4 Stellen:
01.
echo !PREVIOUS:~-4! 
02.
echo !NEXT:~-4!
Grüße
bastla
Bitte warten ..
Mitglied: Penny.Cilin
04.06.2012 um 10:57 Uhr
Hallo Stefan,

hast Du vielleicht
 echo off & setlocal enabledelayedexpansion  
vorher vergessen?
Bitte warten ..
Mitglied: StefanHuber
05.06.2012 um 11:38 Uhr
@bastla: es ging halt nicht mit der Variablen ZAEHLER zu rechnen.

@Penny.Cilin: Ne, an den ersten Zeilen habe ich nixs verändert...

@beide: danke für die Hilfe
Bitte warten ..
Ähnliche Inhalte
VB for Applications

VBA. 4stelliger Moneywert wird in Excel auf 2 Stellen gerundet

gelöst Frage von AximandVB for Applications3 Kommentare

Moin zusammen, ich greife ein Money-Feld mit 4 Nachkommastellen aus dem SQL-Server über ADODB ab. Der Wert des Feldes ...

Batch & Shell

PowerShell - Werte werden nicht ausgegeben und Formatierung Ausgabe

gelöst Frage von goodbytesBatch & Shell16 Kommentare

Hallo, diese Abfrage im PS-Fenster (Windows PowerShell ISE) gibt im PS-Fenster dieses Ergebnis zurück: Die gleiche Abfrage, nur mit ...

Ubuntu

Ubuntu: Audio wird stark verlangsamt ausgegeben

gelöst Frage von ralfkauskUbuntu2 Kommentare

Ich habe ein Lenovo Thinkpad mit Linux Ubuntu 16.04 LTS. Seit neustem werden alle Audioausgaben stark verzögert. Es war ...

Datenbanken

Letzter Datensatz wird zweimal ausgegeben. Warum?

gelöst Frage von Web-SpiritsDatenbanken1 Kommentar

Hallo, Ich habe folgende Prozedur geschrieben: Jetzt wird mir der letzte Datensatz in der Tabelle zweimal ausgegeben und ich ...

Neue Wissensbeiträge
Humor (lol)
IoT-Gefahr: Smartes Aquarium leckt!
Information von Lochkartenstanzer vor 1 TagHumor (lol)3 Kommentare

Moin, Die IoT-Manie hat weitere Opfer gefunden. Ein Casino-Leck durch ein smartes Aquarium: Allerdings haben sie kein Wasser, sondern ...

Router & Routing

Alte Fritzbox 7270 mit VPN und SIP-Telefonie hinter O2 Homebox 6641 als "Modem"

Erfahrungsbericht von the-buccaneer vor 2 TagenRouter & Routing3 Kommentare

Nun war es soweit: Auch O2 hat mich mit VOIP zwangsbeglückt. Heute am Privatanschluss, in 2 Wochen ist das ...

Sicherheit

Ungepatchte Remote Code Execution-Lücke in LG NAS

Information von kgborn vor 2 TagenSicherheit

Nutzt wer LG NAS-Einheiten? In den NAS-Einheiten der LG Network Storage-Einheiten gibt es eine sehr unschöne Schwachstelle, die einen ...

Windows Update

Neue Version KB4099950 NIC Einstellungen gehen verloren

Information von sabines vor 2 TagenWindows Update2 Kommentare

Es ist eine neue Version des KB4099950 verfügbar, die das Problem mit den verlorenen Netzwerkeinstellungen lösen soll. Das Datum ...

Heiß diskutierte Inhalte
Linux Netzwerk
Raspberry Pi 3: WLAN Power save deaktivieren
Frage von nordie92Linux Netzwerk14 Kommentare

Moin moin, mein Raspberry Pi 3 Model B benötigt eine dauerhaft aktive WLAN-Verbindung. Leider bricht die WLAN-Verbindung nach einigen ...

Netzwerkmanagement
Netzwerkmanagment im Haus mit Switch, Panel und pfsense
gelöst Frage von CorraggiounoNetzwerkmanagement13 Kommentare

hi zusammen, wir sind gerade dabei das ganze Haus bzw. die einzelnen Zimmer mit netzwerkdosen zu versorgen. Vom Keller ...

Vmware
Server 2008 r2 vmware terminalserver
Frage von MasterCVmware12 Kommentare

Guten Abend zusammen, ich hoffe , dass einer von euch mir weiterhelfen kann ,bei meinem kack Problem ! Ist ...

Google Android
Empfehlung: Android Ortungsapp
gelöst Frage von certifiedit.netGoogle Android12 Kommentare

Guten Morgen, grundsätzlich vorweg, ich wollte mich eben schlau machen, bzgl einer Ortungsapp, welche Androidbasiert einem anderen Androidsmartphone mitteilt, ...