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, 3842 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
Router & Routing

192.168er Adresse im öffentlichen Netz

(2)

Erfahrungsbericht von visco-c zum Thema Router & Routing ...

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

Batch & Shell
gelöst Ausgelagerte Variablen in Batchdatei (6)

Frage von mp-home zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Zusammenarbeit
Als Administrator im Großraumbüro (29)

Frage von Dopamin85 zum Thema Zusammenarbeit ...

Exchange Server
Test-ActiveSyncConnectivity Error nach neuem Zertifikat (22)

Frage von Driphex zum Thema Exchange Server ...

Hyper-V
HYPER V und USB (16)

Frage von Hendrik2586 zum Thema Hyper-V ...

SAN, NAS, DAS
Backupserver für KMU (14)

Frage von Leo-le zum Thema SAN, NAS, DAS ...