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, 3726 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
Ähnliche Inhalte
Batch & Shell
gelöst Suchen ersetzen mit Sonderzeichen (2)

Frage von GNLen1 zum Thema Batch & Shell ...

Windows 10
gelöst Werden Dateien beim Ersetzen wirklich überschrieben? (3)

Frage von Nexder zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Hardware
Laptop ins Salzwasser gefallen (18)

Frage von Marcel94 zum Thema Hardware ...

Switche und Hubs
LAG zwischen Cisco SG300 und Dlink DGS1100 herstellen - wie? (13)

Frage von White-Rabbit2 zum Thema Switche und Hubs ...

Hardware
Lenovo Yoga 500 über angeschlossene USB Tastatur booten (13)

Frage von thomasreischer zum Thema Hardware ...

CPU, RAM, Mainboards
Hardware Fragen (12)

Frage von xaver-2 zum Thema CPU, RAM, Mainboards ...