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

Batch liest Textdatei, gibt Variable mit Leerzeichen aber nur verstümmelt aus

Frage Microsoft Windows Userverwaltung

Mitglied: dumbo

dumbo (Level 1) - Jetzt verbinden

27.11.2006, aktualisiert 14:42 Uhr, 6741 Aufrufe, 4 Kommentare

Ich habe eine Textdatei (test.txt)

Sie enthält Fürs Beispiel eine Zeile mit dem Inhalt: Ein Test
Ich erstelle eine Testbatchdatei mit dem Inhalt:

@cls
@for /F "eol= tokens=1 delims=, " %%i in (test.txt) do @echo Variableninhalt: %%i
pause

Wenn ich das nun ausführe spuckt das Dosfenster nur "Ein" aus. Ein setzen von "" um die Variable in der Textdatei als auch bei der Ausgabe bringt genau gar nichts.

Wie kann ich dafür sorgen das er die Variable komplett einliest bzw. ausgibt?
Mitglied: Biber
27.11.2006 um 13:25 Uhr
Moin dumbo,

obwohl ich von Userverwaltung nicht so viel verstehe, trotzdem ein paar unverbindliche Tipps von mir zum FOR /F -Befehl.

1) Niemals "eol=" verwenden, wenn Du nicht weißt, was es bedeutet
2) Niemals "tokens=1" verwenden, wenn Du nicht weißt, was es bedeutet
3) Niemals "delims=, " verwenden, wenn Du nicht weißt, was es bedeutet
4) in der Hilfe zu FOR (also "FOR /?") ist alles erklärt
5) in diesem HowTo ist es noch besser beschrieben, was ich meine.

Grüße
Biber
Bitte warten ..
Mitglied: dumbo
27.11.2006 um 14:30 Uhr
ach gottchen bist du ein Witzbold.
Ich verbeuge mich vor deiner unendlichen Weisheit.

Hochmut kommt vor dem Fall, frohes stolpern.
Bitte warten ..
Mitglied: Biber
27.11.2006 um 14:39 Uhr
Dann nochmal ganz humorlos (ist eh nicht meine starke Seite).

"Tokens=1" bedeutet: nur der erste Token (quasi das erste Einzelteil, das erste Wort) der Gesamtzeile.
"Delims=, " bedeutet: ...fasse als Token alles auf, was vom Nachfolger durch "KOMMA" oder SPACE getrennt ist.

Gesamtzeile "Ein Test"
Delims= KOMMA und SPACE
Token1="Ein"
Token2="Test"

Wenn Du die ganze Zeile möchtest, dann..
FOR /F "delims=" %%i in (test.txt) do @echo VarInhalt: %%i

HTH Biber
P.S. Ach ja.. und "eol=" bedeutet:
Das End-of-Lied wird beim nächsten Mal das gleiche sein, wenn Du nicht vorher die Syntaxbedeutung kennst.
Bitte warten ..
Mitglied: dumbo
27.11.2006 um 14:42 Uhr
Ein Reminder den "delims" Parameter zu überdenken hätte gereicht, der Fehler war das Leerzeichen - ja.
Das Token wäre nicht das Problem gewesen, da die Token, so mehrere vorhanden sind, durch den Parameter "delims" bestimmt werden.

Mich ärgert es ein wenig, wenn man aufgrund eines dummen Fehlers auch gleich als Depp abgestempelt wird. Und ich verlange niemals eine Komplettlösung sondern lediglich einen Hinweis.
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst Batch Variable setzten mit Leerzeichen (3)

Frage von Marlon1 zum Thema Batch & Shell ...

Batch & Shell
gelöst Batch: Textdatei Zeilenweise auslesen (2)

Frage von CreatorX zum Thema Batch & Shell ...

Batch & Shell
Batch-Variable nach Stichworten aus TXT Datei durchsuchen (3)

Frage von 126594 zum Thema Batch & Shell ...

Batch & Shell
Jede Zeile einer Textdatei in eigene Variable speichern (5)

Frage von tomaschku zum Thema Batch & Shell ...

Neue Wissensbeiträge
Windows Tools

Zeit für Energiesparmodus, Bildschirmabschaltung etc. schnell anpassen

Anleitung von hannsgmaulwurf zum Thema Windows Tools ...

Linux Netzwerk

Ping und das einstellbare Bytepattern

(1)

Erfahrungsbericht von LordGurke zum Thema Linux Netzwerk ...

Windows Update

Microsoft Update KB4034664 verursacht Probleme mit Multimonitor-Systemen

(4)

Tipp von beidermachtvongreyscull zum Thema Windows Update ...

Heiß diskutierte Inhalte
Firewall
Richtige Grundeinstellungen der Pfsense für mein Netzwerk (14)

Frage von Spitzbube zum Thema Firewall ...

Switche und Hubs
gelöst Cisco 2960x Stacking über mehrere Etagen (12)

Frage von b3scher zum Thema Switche und Hubs ...