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, 6721 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 Abfrage Vergleiche mit Variable goto (4)

Frage von Zunaras zum Thema Batch & Shell ...

Batch & Shell
gelöst Batch Variable setzten mit Leerzeichen (3)

Frage von Marlon1 zum Thema Batch & Shell ...

Batch & Shell
gelöst Laufwerksbezeichnung (label) in Batch als Variable nutzen (6)

Frage von tobias.mock zum Thema Batch & Shell ...

Neue Wissensbeiträge
Batch & Shell

Batch zum Zurücksetzen eines lokalen Profils

Tipp von Mr.Error zum Thema Batch & Shell ...

RedHat, CentOS, Fedora

Fedora, RedHat, Centos: DNS-Search Domain setzen

(13)

Tipp von Frank zum Thema RedHat, CentOS, Fedora ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
VPN Tunnel aufbauen (16)

Frage von Hajo2006 zum Thema LAN, WAN, Wireless ...

Microsoft Office
Saubere HTML aus Word-Dokument (14)

Frage von peterpa zum Thema Microsoft Office ...

Router & Routing
ASUS RT-N18U mit VPN Client hinter Fritzbox - Portforwarding (14)

Frage von marshall75000 zum Thema Router & Routing ...

E-Mail
gelöst Probleme beim E-Mail Empfang (12)

Frage von TommyB83 zum Thema E-Mail ...