Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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

Ergebnisse einer Batch datei in ein Textdokument schreiben

Frage Entwicklung Batch & Shell

Mitglied: Tamara87

Tamara87 (Level 1) - Jetzt verbinden

10.12.2011 um 16:15 Uhr, 2717 Aufrufe, 6 Kommentare

Hallo zusammen,

ich hab leider nicht viel erfahrung mit Batch Dateien und sitze jetzt schon einige zeit an einem kleinen problem und zwar habe ich eine batch datei die von 1 bis 1024 hochzählt.
Das ist eigendlich auch richtig so, nur leider bekomme ich es nicht hin das alle hochgezählten Zahlen in ein Textdokument geschrieben werden.
Entweder schreibt er nur die erste Zahl rein oder nur die letzte. Was muss ich machen damit er alle Zahlen in einem Textdokument ausgibt ?

LG Tamara
Mitglied: Biber
10.12.2011 um 17:29 Uhr
Moin Tamara87,

zur Beantwortung der Frage wäre es nicht ganz unwesentlich, deinen Skriptschnipsel mitlesen zu dürfen.

Meinetwegen auch eine Kopie davon mit anonymisierten Laufvariablennamen.

Ein Beispiel zur Lösung wäre z.B. am CMD-Prompt
>con (for /L %i in (1,1,12) do @echo %i)
... wobei du natürlich statt ">con", also umleiten auf den Monitor, auch ">d:\temp\AlleZahlen.txt" schreiben kannst.
Und statt (1,1,12) natürlich auch (1,1,1024) nehmen kannst.

Grüße
Biber
Bitte warten ..
Mitglied: Tamara87
10.12.2011 um 18:18 Uhr
Ja klar hier ist der Dateiinhalt

@echo off &setlocal
:loop
set /a xCount+=1
set "output=00%xCount%"
set "output=%output:~-4%"
echo.%output%
if "%xCount%"=="1024" goto :exit
goto :loop

:exit
pause
Bitte warten ..
Mitglied: bastla
10.12.2011 um 19:43 Uhr
Hallo Tamara87 und willkommen im Forum!

Was Du an Bibers Beispiel oben nichts siehst (weil er die gesamte Schleife "geklammert" hat und daher nur eine einzige Ausgabe stattfindet) ist die Möglichkeit, per Umleitung mit ">>" Zeilen an eine bestehende Datei anzufügen - da sollte es eigentlich genügen, in der Zeile, deren Nummer ich jetzt nicht nennen kann, weil Du keine "Code"-Formatierung verwendet hast (was sich aber auch nachträglich noch machen ließe ), etwa so
>>"D:\Dein Ordner\Deine Datei.txt" echo.%output%
das Ausgabeziel hinzuzufügen ...
BTW:
01.
if "%xCount%"=="1024" goto :exit 
02.
goto :loop 
03.
 
04.
:exit
ließe sich etwas eleganter so schreiben:
01.
if "%xCount%" neq "1024" goto :loop
Grüße
bastla
Bitte warten ..
Mitglied: Tamara87
10.12.2011 um 20:05 Uhr
vielen dank für eure schnellen antworten
hat sofort geklappt

LG Tamara
Bitte warten ..
Mitglied: Biber
10.12.2011 um 21:21 Uhr
Moin bastla,

Zitat von bastla:
Was Du an Bibers Beispiel oben nichts siehst (weil er die gesamte Schleife "geklammert" hat und daher nur eine einzige Ausgabe stattfindet)
Wieso sollte sie denn nichts sehen?
Mein proof-of-concept von vorhin war...
 
(=17:22:27  d:\temp=) 
>for /L %i in (1,1,12) do @echo %i 
10 
11 
12 
 
(=17:22:35  d:\temp=) 
>>con (for /L %i in (1,1,12) do @echo %i) 
10 
11 
12
[jeweils das erste ">" in den Befehlszeilen gehört mit zu meinem Prompt]

Grüße
Biber
Bitte warten ..
Mitglied: bastla
10.12.2011 um 21:28 Uhr
Hallo Biber!
Wieso sollte sie denn nichts sehen?
Sorry - sollte "nicht siehst" heißen (weil Du eben nur die - sinnvollere - ">"-Version gezeigt hattest) ...

Grüße
bastla
Bitte warten ..
Neuester Wissensbeitrag
CPU, RAM, Mainboards

Angetestet: PC Engines APU 3a2 im Rack-Gehäuse

Erfahrungsbericht von ashnod zum Thema CPU, RAM, Mainboards ...

Ähnliche Inhalte
Batch & Shell
Ä in batch Datei (12)

Frage von BergEnte zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Grafikkarten & Monitore
Win 10 Grafikkarte Crash von Software? (13)

Frage von Marabunta zum Thema Grafikkarten & Monitore ...

DSL, VDSL
DSL-Signal bewerten (10)

Frage von SarekHL zum Thema DSL, VDSL ...

Windows Server
Mailserver auf Windows Server 2012 (8)

Frage von StefanT81 zum Thema Windows Server ...

Backup
Clients als Server missbrauchen? (8)

Frage von 1410640014 zum Thema Backup ...