robx
Goto Top

Batch unter XP, Leerzeichen in Variable

Hallo,

ich will unter XP folgendes machen:

:: set PROG="C:\Programme\"
set PROG="C:\Program Files\"
set USR="XXXX"

%PROG%OpenSSH\bin\mkpasswd -l -u %USR% >> %PROG%OpenSSH\etc\passwd

Wie muß ich die Maskierung vornehmen ?
Danke für jeden Hinweis !

Gruß, rob

Content-ID: 86545

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

Ausgedruckt am: 25.11.2024 um 07:11 Uhr

SlainteMhath
SlainteMhath 28.04.2008 um 11:56:03 Uhr
Goto Top

Wie muß ich die Maskierung vornehmen ?

So:

"%PROG%"OpenSSH\bin\mkpasswd -l -u %USR% >> "%PROG%"OpenSSH\etc\passwd

sollte es genügen.
bastla
bastla 28.04.2008 um 11:58:06 Uhr
Goto Top
Hallo robx!

Ich tendiere dazu, weder den abschließenden Backslash, noch die Anführungszeichen mit in die Variable aufzunehmen, weil der Pfad in der Verwendung damit lesbarer und flexibler wird - daher:
set "PROG=C:\Program Files"  
set USR="XXXX"  

"%PROG%\OpenSSH\bin\mkpasswd" -l -u %USR% >> "%PROG%\OpenSSH\etc\passwd"  
Nützlich könnte auch noch der Umstand sein, dass es eine Systemvariable %ProgramFiles% gibt (für weitere Systemvariablen einfach in einer Konsole "set" eingeben) - damit müsstest Du auch nicht nach der Sprache (dt. / engl.) unterscheiden. Damit sähe das dann so aus:
set USR="XXXX"  

"%ProgramFiles%\OpenSSH\bin\mkpasswd" -l -u %USR% >> "%ProgramFiles%\OpenSSH\etc\passwd"  

Grüße
bastla
robx
robx 28.04.2008 um 14:04:55 Uhr
Goto Top
super.

DANKE euch beiden für die zügige Antwort !

Gruß, rob