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

Ausgabe einer Variablen die das UND-Zeichen enthält mittels echo-Befehl

Frage Entwicklung Batch & Shell

Mitglied: alfabravo

alfabravo (Level 1) - Jetzt verbinden

10.12.2010 um 13:39 Uhr, 3838 Aufrufe, 2 Kommentare

Hallo Forum!

Ich habe ein Problem mit dem nachfolgenden Skript.

Ich möchte eine Textdatei (Datei.txt) splitten:

Steht in Datei.txt am Anfang der Zeile die "1" wird der Satz in Datei1.txt geschrieben.
Steht in Datei.txt am Anfang der Zeile die "2" wird der Satz in Datei2.txt geschrieben.

Das Problem ist, dass der Inhalt in Datei.txt auch vereinzelt das "&"-Zeichen enthält.

Bei Ausgabe der Variablen über echo>> wird das Zeichen ungewollt als Kommando interpretiert.

Gibt es da eine Lösung?

@echo off

FOR /F "usebackq delims=" %%L in ("C:\Datei.txt") do call :ProcessLine "%%L"

:ProcessLine
set "Line=%~1"
set "erstesZeichen=%Line:~0,1%"

IF %erstesZeichen% == 1 echo>> "C:\Datei1.txt" %Line%
IF %erstesZeichen% == 2 echo>> "C:\Datei2.txt" %Line%

goto :eof
Mitglied: my0name
10.12.2010 um 13:52 Uhr
Probier mal das hier:
@echo off

FOR /F "usebackq delims=" %%L in ("C:\Datei.txt") do call :ProcessLine "%%L"

:ProcessLine
set "Line=%~1"
set "erstesZeichen=%Line:~0,1%"

set "Line=%Line:&=^&%"

IF %erstesZeichen% == 1 echo>> "C:\Datei1.txt" %Line%
IF %erstesZeichen% == 2 echo>> "C:\Datei2.txt" %Line%

goto :eof

Hab es mal hiermit erweitert:
set "Line=%Line:&=^&%"

Damit wird & in der Variablen %Line% gesucht und durch ^& ersetzt, was im Prinzip escape bedeutet
Bitte warten ..
Mitglied: alfabravo
10.12.2010 um 14:06 Uhr
Super, hat einwandfrei funktioniert. Vielen Dank für die schnelle Hilfe !!
Bitte warten ..
Neuester Wissensbeitrag
CPU, RAM, Mainboards

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

(1)

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

Ähnliche Inhalte
Batch & Shell
gelöst Batch (Win7): Kombinierte Ausgabe mit echo? (1)

Frage von Ben.Blake.79 zum Thema Batch & Shell ...

Batch & Shell
gelöst Batch for f Befehl erkennt doppelte Zeichen als eines (3)

Frage von Markus5579 zum Thema Batch & Shell ...

Windows Server
Windows Remote App - Ausgabe in lokales Office (1)

Frage von fluluk zum Thema Windows Server ...

Python
Python - ausgabe formatieren

Frage von BadFsaadKl zum Thema Python ...

Heiß diskutierte Inhalte
DSL, VDSL
DSL-Signal bewerten (13)

Frage von SarekHL zum Thema DSL, VDSL ...

Switche und Hubs
Trunk für 2xCisco Switch. Wo liegt der Fehler? (13)

Frage von JayyyH zum Thema Switche und Hubs ...

Windows Server
Mailserver auf Windows Server 2012 (9)

Frage von StefanT81 zum Thema Windows Server ...

Backup
Clients als Server missbrauchen? (9)

Frage von 1410640014 zum Thema Backup ...