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

Text in Variable durch Varible ersetzen

Frage Entwicklung Batch & Shell

Mitglied: Ren

Ren (Level 1) - Jetzt verbinden

05.11.2008, aktualisiert 15:39 Uhr, 3729 Aufrufe, 3 Kommentare

Mein Problem: Ich versuche einen Variable zu bearbeiten, dazu habe ich folgendes schon gefunden:
01.
set test=c:\ablage\test\1 
02.
set test1=%test:c:\ablage\=" 
03.
::test1 hat jetzt den Wert test\1
mein Problem ist jetzt aber, dass der Wert c:\ablage\ variabel ist, also auch in einer Variablen steckt:
01.
set del=c:\ablage\ 
02.
set test=c:\ablage\test\1 
03.
set test1=%test:%del%=" 
04.
::test1 soll jetzt den Wert test\1 haben, hat es aber nicht
Wie muss ich die %-Zeichen Escapen oder was muss ich sonst machen, damit das gewünschte Ergebnis herauskommt? Das ganze muss unter Windows 200 und neuer funktionieren. Danke schon mal...
Mitglied: Biber
05.11.2008 um 15:10 Uhr
Moin Ren,

am einfachsten ginge es mit "DelayedExpansion"
01.
>set "del=c:\ablage\" 
02.
 
03.
(=15:05:07  D:\temp=) 
04.
>set "test=c:\ablage\test\1" 
05.
 
06.
(=15:05:51  D:\temp=) 
07.
>@echo !test:%del%=! 
08.
test\1
Dazu in der ersten Batchzeile eingeben
01.
@echo off % setlocal EnableDelayedExpansion
Grüße
Biber
Bitte warten ..
Mitglied: bastla
05.11.2008 um 15:11 Uhr
Hallo Ren!

Versuch es so:
01.
@echo off & setlocal 
02.
set del=c:\ablage\ 
03.
set test=c:\ablage\test\1 
04.
call set "test1=%%test:%del%=%%" 
05.
echo %test1%
oder so:
01.
@echo off & setlocal enabledelayedexpansion 
02.
set del=c:\ablage\ 
03.
set test=c:\ablage\test\1 
04.
set "test1=!test:%del%=!" 
05.
echo %test1%
Grüße
bastla

[Edit] @Biber: Schon wieder ... [/Edit]
Bitte warten ..
Mitglied: Ren
05.11.2008 um 15:38 Uhr
hi, das ging ja schnell!
Also, alle drei Vorschläge gingen zwar nicht, aber die Kombination aus dem 3. und dem 1. klappt:
01.
@echo off & setlocal enabledelayedexpansion 
02.
set "del=c:\ablage\" 
03.
set "test=c:\ablage\test\1" 
04.
echo !test:%del%=!
coole Sache, und ich muss gestehen, dass ich nichts verstehe. Ich google jetzt mal einen Runde nach enabledelayedexpansion, da scheint es ja etwas zu geben, was ich so noch nicht kenne!
danke
Bitte warten ..
Neuester Wissensbeitrag
Off Topic

"Ich habe nichts zu verbergen"

(2)

Erfahrungsbericht von FA-jka zum Thema Off Topic ...

Ähnliche Inhalte
Batch & Shell
gelöst Mit zusammengesetzter Variable auf andere Variable zugreifen (2)

Frage von abiber zum Thema Batch & Shell ...

Ubuntu
gelöst PHP-Version mit Bash in Variable schreiben? (11)

Frage von StefanKittel zum Thema Ubuntu ...

Heiß diskutierte Inhalte
CPU, RAM, Mainboards
Kaufberatung für mind. 8 verschiedene HighEnd-Mainboards (23)

Frage von yperiu zum Thema CPU, RAM, Mainboards ...

Mac OS X
Mac kann nicht im LAN pingen alle anderen schon (19)

Frage von smartino zum Thema Mac OS X ...

Hyper-V
Langsames Netzwerk i210 LAN Karte (10)

Frage von Akcent zum Thema Hyper-V ...

Netzwerke
Abisolierwerkzeug (9)

Frage von SarekHL zum Thema Netzwerke ...