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

Verbotene Zeichen per Batch in Text-Datei schreiben.

Frage Entwicklung Batch & Shell

Mitglied: max5moritz

max5moritz (Level 1) - Jetzt verbinden

28.01.2013, aktualisiert 18:19 Uhr, 2539 Aufrufe, 2 Kommentare

Hallo Batchler,

ích versuche gerade per Batch eine neue Batch zu erstellen.

Dazu habe ich folgenden Skript erstellt. Der Einfachkeit wegen habe ich auch gleich das derzeitige Ergebnis und meinen Wunsch /Ziel darunter gesetzt.

Was mache ich verkehrt? Oder geht das gar nicht, diese Batch-Sonderzeichen per ECHO in eine Datei umzuleiten?

01.
:start-set 
02.
echo if "%~1"=="progs" goto :%~1 > "%~dp0start-set.bat" 
03.
echo :start>>"%~dp0start-set.bat" 
04.
echo.>>"%~dp0start-set.bat" 
05.
echo :progs>>"%~dp0start-set.bat" 
06.
echo Diesen Bereich anpassen und abspeichern.>>"%~dp0start-set.bat" 
07.
echo.>>"%~dp0start-set.bat" 
08.
echo if "%~2"=="" (goto :eof) ELSE goto :%~2 >>"%~dp0start-set.bat" 
09.
echo.>>"%~dp0start-set.bat" 
10.
echo :stamp>>"%~dp0start-set.bat" 
11.
echo set "stamp=%date:~-4%%date:~3,2%%date:~0,2%_%time::=%" >>"%~dp0start-set.bat" 
12.
echo set "stamp=%stamp:~0,-3%" >>"%~dp0start-set.bat" 
13.
echo goto :eof>>"%~dp0start-set.bat" 
14.
echo.>>"%~dp0start-set.bat" 
15.
echo :ende>>"%~dp0start-set.bat" 
16.
ping -n 2 localhost 1>NUL 2>NUL 
17.
notepad "%~dp0start-set.bat" 
18.
goto :eof 
19.
 
20.
--------------- Ergebins ------------------------ 
21.
if ""=="progs" goto :  
22.
:start 
23.
 
24.
:progs 
25.
Diesen Bereich anpassen und abspeichern. 
26.
 
27.
if ""=="" (goto :eof) ELSE goto :  
28.
 
29.
:stamp 
30.
set "stamp=20130128_180503,95"  
31.
goto :eof 
32.
 
33.
:ende 
34.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
35.
............. Das Ziel .................... 
36.
if "%~1"=="progs" goto :%~1 
37.
:start 
38.
 
39.
:progs 
40.
Diesen Bereich anpassen und abspeichern. 
41.
 
42.
if "%~2"=="" (goto :eof) ELSE goto :%~2 
43.
 
44.
:stamp 
45.
set "stamp=%date:~-4%%date:~3,2%%date:~0,2%_%time::=%" 
46.
set "stamp=%stamp:~0,-3%" 
47.
goto :eof 
48.
 
49.
:ende 
50.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Danke im Voraus für die Mithilfe.

Gruß
max5moritz
Mitglied: Friemler
28.01.2013, aktualisiert um 19:47 Uhr
Hallo max5moritz,

das geht schon, Du musst die in Batchscript als Steuerzeichen interpretierten Zeichen jedoch "escapen". In Deinem Beispiel sind es nur Prozentzeichen, die muss man nur verdoppeln. Andere Zeichen (z.B. &, <, >, |, ^) muss man mit ^ "escapen", das ^-Zeichen wird dann so ^^ "escaped".

Dein Script in funktionierender Form:
01.
:start-set 
02.
> "%~dp0start-set.bat" echo.if "%%~1"=="progs" goto :%%~1 
03.
>>"%~dp0start-set.bat" echo.:start 
04.
>>"%~dp0start-set.bat" echo. 
05.
>>"%~dp0start-set.bat" echo.:progs 
06.
>>"%~dp0start-set.bat" echo.Diesen Bereich anpassen und abspeichern. 
07.
>>"%~dp0start-set.bat" echo. 
08.
>>"%~dp0start-set.bat" echo.if "%%~2"=="" (goto :eof) else (goto :%%~2) 
09.
>>"%~dp0start-set.bat" echo. 
10.
>>"%~dp0start-set.bat" echo.:stamp 
11.
>>"%~dp0start-set.bat" echo.set "stamp=%%date:~-4%%%%date:~3,2%%%%date:~0,2%%_%%time::=%%" 
12.
>>"%~dp0start-set.bat" echo.set "stamp=%%stamp:~0,-3%%" 
13.
>>"%~dp0start-set.bat" echo.goto :eof 
14.
>>"%~dp0start-set.bat" echo. 
15.
>>"%~dp0start-set.bat" echo.:ende 
16.
 
17.
ping -n 2 localhost 1>NUL 2>NUL 
18.
notepad "%~dp0start-set.bat"
Gruß
Friemler
Bitte warten ..
Mitglied: max5moritz
28.01.2013 um 20:44 Uhr
@Friemler

Herzlichen Dank, und optisch so schön, das gefällt mir. Und findet auch gleich dort und da seine Anwendung.

Gruß
max5moritz
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-Skript: Messdaten in Textdatei finden und in eine neue Datei schreiben (5)

Frage von habmalnefrage zum Thema Batch & Shell ...

Windows Systemdateien
gelöst Registry-Schlüssel per Batch auslesen und in Datei schreiben (9)

Frage von Philzip zum Thema Windows Systemdateien ...

Batch & Shell
gelöst Ordner per Batch verschieben, Datei kopieren (2)

Frage von Shape.Shifter zum Thema Batch & Shell ...

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? (10)

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