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

BATCH For Schleife mit führender Null?

Frage Entwicklung Batch & Shell

Mitglied: einfachBernd

einfachBernd (Level 1) - Jetzt verbinden

06.11.2012 um 08:51 Uhr, 8062 Aufrufe, 11 Kommentare

Hallo an alle

Bräuchte Hilfe bei einen Problem wo ich nicht weiterkomme.

for /l %a in (1,1,99999) do ( echo %a )

... %%a soll z.b. 00001 anzeigen
... %%a soll z.b. 91031 anzeigen

Wie richte ich das ein?

Danke
Mitglied: bastla
06.11.2012 um 09:38 Uhr
Hallo einfachBernd!

Lässt sich unmittelbar nicht lösen - in einem Batch entweder ein Unterprogramm oder "delayedExpansion" verwenden, etwa:
01.
setlocal enabledelayedexpansion 
02.
for /l %%a in (100001,1,199999) do set "Zahl=%%a" & echo !Zahl:~-5!
Grüße
bastla
Bitte warten ..
Mitglied: einfachBernd
06.11.2012 um 09:45 Uhr
Hi bastla

Danke für die schnelle Lösung

01.
 setlocal enabledelayedexpansion 
hat mal wieder gefehlt ;)
Bitte warten ..
Mitglied: einfachBernd
14.11.2012 um 10:19 Uhr
OK nun habe ich zu dem Thema doch ein Problem bei einem BATCH

01.
echo off 
02.
cls 
03.
 
04.
rem SystemSettings 
05.
setlocal enabledelayedexpansion  
06.
set name=ATL 
07.
 
08.
for /l %%a in (1,1,99999) do (  
09.
 set Zahl=%%a 
10.
 ping -n 1 -w 1 %name%!Zahl:~-5! >nul 2>nul 
11.
 if not errorlevel 1 ( echo OK  - %name%!Zahl:~-5! 
12.
                       echo %name%!Zahl:~-5!>> "%~dp0ONLINE.txt") else ( echo XXX - %name%!Zahl:~-5! ) 
13.
14.
 
15.
pause
es sollte so sein, dass der Ping bei ATL00001 startet stattdessen kommt aber der Ping auf ATL1

was mache ich falsch?

Danke für Info
Bitte warten ..
Mitglied: degNLB
14.11.2012, aktualisiert um 10:30 Uhr
Zeile 8 hast du in der Klammer (1,1,99999) zu stehen, anstatt die Lösung von Bastla "(100001,1,199999)"
Bitte warten ..
Mitglied: einfachBernd
14.11.2012 um 10:32 Uhr
Hi degNLB des is aber keine Lösung denn dann hast ja die 5Stellen von Start weg schon ;)

ich möchts von 1 = 00001 weg haben und nicht von 10001 ;)

LG Berni
Bitte warten ..
Mitglied: degNLB
14.11.2012 um 10:37 Uhr
aber wenn ich mich jetzt nicht irre, dann sind 100001 und 199999 sechsstellig und die Option bzw. der Befehl "!Zahl:~-5!" gibt nur die letzten 5 Stellen aus, d.h. unterm Strich sollte er so von 00001 anfangen zu Zählen
Bitte warten ..
Mitglied: einfachBernd
14.11.2012 um 10:42 Uhr
ok das schon, aber das ist für mich keine saubere Lösung.

Muss sauber auch gehen ;)
Bitte warten ..
Mitglied: degNLB
14.11.2012 um 10:47 Uhr
aber bei Fragen zu Batch kannst du dem bastla ruhig glauben und vertrauen... er hat Ahnung davon ;)

Und mit Batch lassen sich gewisse Dinge gut und einfach erledigen, aber jede Programmiersprache hat so ihre schwächen, also müsstest du in Powershell, dem großen Bruder, mal nachsehen, ob es dort eine bessere Lösung gibt.
... oder dir eine andere Programmiersprache anlesen, wenn du nicht damit Leben willst :P
Bitte warten ..
Mitglied: bastla
14.11.2012, aktualisiert um 12:10 Uhr
Hallo degNLB!

Danke für Dein Vertrauen
@ einfachBernd
das ist für mich keine saubere Lösung.
Ich kenne ja Deine Definition von "sauber" nicht - aber wenn Dir sowas lieber wäre
01.
for /l %%a in (0,1,9) do ( 
02.
    for /L %%b in (0,1,9) do ( 
03.
        for /l %%c in (0,1,9) do ( 
04.
            for /l %%d in (0,1,9) do ( 
05.
                for /l %%e in (0,1,9) do ( 
06.
                    if "%%a%%b%%c%%d%%e" neq "00000" ( 
07.
                        echo %%a%%b%%c%%d%%e 
08.
09.
10.
11.
12.
13.
)
dann nur zu ...

Grüße
bastla
Bitte warten ..
Mitglied: einfachBernd
14.11.2012 um 12:45 Uhr
hi bastla,

war kein angriff gegen dich, nur ich weiß ich hab das schon mal gelöst eben auch mit variable in forschleife mit ! aber mir fehlt ein kontext ;)

der obere code erfüllt seinen zweck ;)
Bitte warten ..
Mitglied: bastla
14.11.2012 um 15:11 Uhr
Hallo einfachBern!

So empfindlich bin ich ja nicht, und die Schleifenvariante war ja auch nicht wirklich ernst gemeint ...

Was Du schon mal gemacht haben könntest, wäre vielleicht
01.
for /l %%a in (1,1,99999) do ( 
02.
    set Zahl=0000%%a 
03.
    echo !%Zahl:~-5! 
04.
)
- eine echte "Zahl" (wäre mit "set /a" zuzuweisen) produzierst Du aber auch in dieser Version nicht ...

Grüße
bastla
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
In Batch random-Zahlen erzeugen mit führenden Nullen
gelöst Frage von DerWoWussteBatch & Shell6 Kommentare

Moin Kollegen. Ich kann per Variable %random% zwar Zufallszahlen erzeugen, weiß jedoch nicht, wie ich führende Nullen einbauen kann. ...

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

Neue Wissensbeiträge
Windows 10

Autsch: Microsoft bündelt Windows 10 mit unsicherer Passwort-Manager-App

Tipp von kgborn vor 1 TagWindows 107 Kommentare

Unter Microsofts Windows 10 haben Endbenutzer keine Kontrolle mehr, was Microsoft an Apps auf dem Betriebssystem installiert (die Windows ...

Sicherheits-Tools

Achtung: Sicherheitslücke im FortiClient VPN-Client

Tipp von kgborn vor 1 TagSicherheits-Tools

Ich weiß nicht, wie häufig die NextGeneration Endpoint Protection-Lösung von Fortinet in deutschen Unternehmen eingesetzt wird. An dieser Stelle ...

Internet

USA: Die FCC schaff die Netzneutralität ab

Information von Frank vor 2 TagenInternet5 Kommentare

Jetzt beschädigt US-Präsident Donald Trump auch noch das Internet. Der neu eingesetzte FCC-Chef Ajit Pai ist bekannter Gegner einer ...

DSL, VDSL

ALL-BM200VDSL2V - Neues VDSL-Modem mit Vectoring von Allnet

Information von Lochkartenstanzer vor 2 TagenDSL, VDSL2 Kommentare

Moin, Falls jemand eine Alternative zu dem draytek sucht: Gruß lks

Heiß diskutierte Inhalte
Batch & Shell
Kann man mit einer .txt Datei eine .bat Datei öffnen?
gelöst Frage von HelloWorldBatch & Shell20 Kommentare

Wie schon im Titel beschrieben würde ich gerne durch einfaches klicken auf eine Text oder Word Datei eine Batch ...

Router & Routing
OpenWRT bzw. L.E.D.E auf Buffalo WZR-HP-AG300H - update
gelöst Frage von EpigeneseRouter & Routing11 Kommentare

Guten Tag, ich habe auf einem Buffalo WZR-HP-AG300H die alternative Firmware vom L.E.D.E Projekt geflasht. Ich bin es von ...

LAN, WAN, Wireless
WLAN Reichweite erhöhen mit neuer Antenne
gelöst Frage von gdconsultLAN, WAN, Wireless8 Kommentare

Hallo, ich besitze einen TL-WN722N USB-WLAN Dongle mit einer richtigen Antenne. Ich frage mich jetzt ob man die Reichweite ...

Windows Server
Ping auf einen bestimmten Server nicht möglich
gelöst Frage von a.thierWindows Server7 Kommentare

Hallo, ich habe folgendes Problem. srv-dc1: Ping srv-nav > geht Ping srv-exchange > geht nicht srv-exchange: Ping srv-dc1 > ...