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

Variable in TextDatei auslesen

Frage Entwicklung Batch & Shell

Mitglied: arvaxtr

arvaxtr (Level 1) - Jetzt verbinden

30.05.2014, aktualisiert 30.07.2015, 1465 Aufrufe, 5 Kommentare, 1 Danke

Hallo Leute,

ich habe eine TextDatei, in der eine Benutzervariable steht:
%MyVar% ist als Benutzervariable in den Umgebungsvariablen definiert.

Inhalt Datei.ini:
%MyVar%


Mit folgendem Befehl lese ich die erste Zeile aus:
for /f "usebackq skip=1 delims=" %%i in ("%CD%\Datei.ini") do (set "vFirstLine=%%i")


Ich rufe eine zweite Batch auf, und übergeben die Variable:
call "vFile.bat" "!vFirstLine!"


Die vFile.bat gibt den Parameter aus:
echo %1

Hier erhalte ich aber den Inhalt der Variable "MyVar"

Was ich aber will ist, dass einfach nur das Wort %MyVar% ausgegeben wird, also als reiner Text, wie er in der Datei.ini steht.

Ich brauche diesen als reinen Text, da dieses "Wort" in eine weitere Datei geschrieben werden soll...

Wie geht das?
Mitglied: Xaero1982
LÖSUNG 30.05.2014, aktualisiert 30.07.2015
Moin,

so ganz den Sinn dahinter versteh ich nicht, aber machs mal mit:

01.
call "vFile.bat" %%vFirstLine%%
Gruß
Bitte warten ..
Mitglied: arvaxtr
30.05.2014, aktualisiert um 20:17 Uhr
Hi,
sorry, ich schildere mein Problem noch mal anschaulicher:
Ich will, dass ein Pfad genauso wiedergegeben wird, wie er in der TXT-Datei steht, anstatt dass darin enthaltene Variablen als dessen Werte ausgegeben werden.

desktop.ini
01.
[.ShellClassInfo] 
02.
IconResource=%windir%\win.ico
MainBatch.bat
01.
@echo off & setlocal enableDelayedExpansion 
02.
 
03.
::READ 
04.
for /f "usebackq skip=1 delims=" %%i in ("%CD%\desktop.ini") do (set "vFirstLine=%%i") 
05.
 
06.
::Display 
07.
echo "!vFirstLine!" 
08.
 
09.
::Pass Parameter 
10.
call "SubBatch.bat" "!vFirstLine!"

SubBatch.bat
01.
@echo off 
02.
 
03.
echo %1 
04.
 
05.
pause

Die Ausgabe:
01.
"IconResource=%windir%\win.ico" 
02.
"IconResource=C:\Windows\win.ico" 
03.
Drücken Sie eine beliebige Taste . . .
Wie man an der zweiten Zeile sieht, ist der Parameter in der Datei SubBatch.bat umgewandelt worden.
Das möchte ich aber vermeiden, so dass der Parameter wie die erste Zeile ausgegeben wird...

Was ich desweiteren absolut nicht hinbekomme ist, eine Variable in die ZwischenAblage zukopieren

01.
echo %%windir%%|clip 
02.
echo ^%windir^%|clip
Klappt alles nicht, ich will nicht den Wert von dieser Variable in die Zwischenablagen haben, sondern genau diesen Text "%windir%"...
Bitte warten ..
Mitglied: Xaero1982
30.05.2014 um 20:21 Uhr
Und ich wiederhole meinen Beitrag gerne noch mal

Du kannst gerne auch die "" angeben. Spielt aber keine Rolle.

Ich habe gerade exakt die von dir genannten Dateien erstellt mit den identischen Namen und habe in der MainBatch folgendes geändert:

01.
call "SubBatch.bat" "%%vFirstLine%%"
Ausgabe:

01.
"IconResource=%windir%\win.ico" 
02.
"IconResource=%windir%\win.ico" 
03.
Drücken Sie eine beliebige Taste . . .
Ich würde meinen, dass die Ausgaben identisch sind, oder?

Gruß
Bitte warten ..
Mitglied: arvaxtr
30.05.2014, aktualisiert um 20:33 Uhr
Hi, Xaero1982
ich könnte schwören, das die doppelten Prozentzeichen so ziemlich das Erste war, was ich zuerst ausprobiert hatte, bevor ich mir die Mühe machte, die Frage hier zu posten.
Es klappt jetzt wie mit Zauberkraft, vielen vielen Dank ))

bleibt noch die Frage, wie ich die Variable %windir% in die Zwischen Ablage kopieren kann,

echo %%windir%%|clip
echo ^%windir^%|clip

klappen nicht
Bitte warten ..
Mitglied: Xaero1982
30.05.2014 um 21:07 Uhr
Das klappt auch so nicht wie es aussieht. Denn der Zwischenablage scheint es warum auch immer wurscht zu sein mit den %% Zeichen.

Du musst das daher in meinen Augen (Bastla?? ) umgehen:

01.
echo %%windir%% >test.log 
02.
clip < test.log 
03.
del test.log 
04.
 
Gruß
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Batch & Shell
gelöst BATCH: Daten aus Textdatei auslesen und in neue Textdatei separieren (9)

Frage von Manuel1234 zum Thema Batch & Shell ...

HTML
gelöst Mit HTML Datei eine Textdatei auslesen (7)

Frage von Maffi zum Thema HTML ...

PHP
gelöst HTML Dropdownmenü auslesen und in PHP als Variable übergeben (35)

Frage von ITFlori zum Thema PHP ...

Google Android
Textdatei auf SD Karte auslesen funktioniert nicht (Oneplus One) (4)

Frage von lordzwieback zum Thema Google Android ...

Heiß diskutierte Inhalte
Windows Tools
gelöst Aussendienst Datensynchronisierung (12)

Frage von lighningcrow zum Thema Windows Tools ...

Windows Server
Suche passender Treiber (12)

Frage von stolli zum Thema Windows Server ...

Peripheriegeräte
Wlan stört Funkmaus (11)

Frage von Falaffel zum Thema Peripheriegeräte ...

Peripheriegeräte
gelöst USB Festplatte verliert Laufwerksbuchstabe (9)

Frage von cese4321 zum Thema Peripheriegeräte ...