arsimael.inshan
Goto Top

Prozentzeichen in eine Windows-Batch-Variable übergeben

In einem Passwort ist ein %-Zeichen enthalten. Wie kann ich dieses Passwort in einer (später zu einer exe kompilierten) batch datei an net use übergeben?

Juten Tach,

Ich habe ein kleines Problem. Auf einem Server läuft ein autimatisierter Workflow. Aus Gründen der "Updateoptimierung" (FAULHEIT) habe ich nun einen Festen zeitpunkt festgelegt wann updates automatisch eingespielt werden, und der Rechner neu startet. Auch das automatische herunter/hochfahren habe ich bereits automatisieren können. ABER!!!!

Ich muss ein paar Netzlaufwerke verbinden. Und da eines dieser Netzlaufwerke auf einem Linux-Server liegt muss ich eine authentifizierung mitgeben. bisher sieht mein Script so aus:

 
set /p PW=1234%+
net use H: \\linuxkiste\freigabe %PW% /user:user /persistent:no

das ganze soll später kompiliert werden und als exe gespeichert werden damit man das Passwort nicht "einfach so" mittels rechtsklick und bearbeiten auslesen kann.

Mein Problem ist, das er das % in dem Passwort scheinbar mit verwurstet denn als %PW% gibt er folgendes aus: 1234+user er "verschluckt" das % und hängt den usernamen ans passwort. Damit is das Passwort natürlich falsch, und der user fehlt...

wie kann ich festlegen das "1234%+" das Passwort ist und nicht 1234[Variable]? wie kann ich das % mit in die Variable stecken?

net use H: \\linuxkiste\freigabe 1234%+ /user:user /persistent:no <.-- selbes Problem
net use H: \\linuxkiste\freigabe "1234%+" /user:user /persistent:no <.-- selbes Problem Passwort: "1234+user
net use H: \\linuxkiste\freigabe '1234%+' /user:user /persistent:no <.-- selbes Problem PassworT: '1234+user

geht das überhaupt?

Content-ID: 177582

Url: https://administrator.de/contentid/177582

Ausgedruckt am: 22.11.2024 um 22:11 Uhr

Skyemugen
Skyemugen 12.12.2011 um 14:57:41 Uhr
Goto Top
Aloha,

%%

greetz André

P.S.: set /p ist eigentlich für manuelle Eingaben während des Ablaufes gedacht (Eingabeaufforderung), also nicht als Inhalt wird ins Skript hinterlegt
P.P.S.: die exe erstellt später aber auch eine temporäre anfassbare, auslesbare Datei face-wink
Arsimael.Inshan
Arsimael.Inshan 12.12.2011 um 15:03:13 Uhr
Goto Top
P.P.S.: die exe erstellt später aber auch eine temporäre anfassbare, auslesbare Datei face-wink

Ja, aber meine user sind zu blöd die datei zu finden. Das man aus ner batch datei ds PW auslesen kann haben die auch nur herausgefunden weil beim systemstart mal kurz das fenster aufflackert wo das PW sichtbar ist, und da kann man ja [DRUCK] drücken und dann in paint nachkucken.
und bei dem konverter den ich verwende erscheint kein fenster mehr face-devilish
Skyemugen
Skyemugen 12.12.2011 um 15:09:42 Uhr
Goto Top
Hm, dann würde ich eher ein VBS verwenden, dass die .bat oder .cmd versteckt aufruft:
Set WshShell = WScript.CreateObject("WScript.Shell")  
WshShell.Run "c:\test.cmd",0,True  

Wann kommt eigentlich der klimagrüne Haken an den Thread? Gelöst ist er schließlich ...
60730
60730 12.12.2011, aktualisiert am 28.09.2022 um 14:33:23 Uhr
Goto Top
Juten Tach,
[OT]
face-wink kommt da nicht
Ludolf vorne dran?
[/OT]

Für "solche" Fälle, wie
Das man aus ner batch datei ds PW auslesen kann haben die auch nur herausgefunden weil beim systemstart mal kurz das fenster aufflackert wo das PW sichtbar ist, und da
...s kann man durch @vorher und >nul nachher unterbinden.
EIn Setlocal würde ich da aber auch noch dranmalen....
setlocal
@set "serial=1234%%+"  
@net use H: \\linuxkiste\freigabe %serial% /user:user /persistent:no>nul

Man "könnte" natürlich auch mit @echo off werkeln.....

Gruß
Arsimael.Inshan
Arsimael.Inshan 12.12.2011 um 15:27:18 Uhr
Goto Top
die exe liegt im windows ordner versteckt und wird mittels registry-befehl (HKLU\software\microsoft\windows\currentversion\run) aufgerufen. sollte vor ungeliebten augen versteckt sein. Wobei auf dem Server ja eh keiner was verloren hat, (und auch keiner ausser mir, meinem Adminkollegen und unserem chef das passwort hat) - aber sicher is sicher.
Arsimael.Inshan
Arsimael.Inshan 12.12.2011 um 15:28:58 Uhr
Goto Top
aber dann stehts immernoch sichtbar in einer datei...