Ich habe eine Funktion, die ungefähr wie folgt aussieht:Powershell - nur Argument-Namen verwenden
function plk(){
$cmd = $args -join ' '
plink [email protected] -i key.ppk $cmd
}
Diese Funktion funktioniert gut, jedoch möchte ich ein neues Argument hinzuzufügen, die es mir ermöglichen, den Server zu ändern (aber keep myserver
als Standard, wenn ich meinen Server nicht nenne). so änderte ich meinen Code dazu:
function plk($server = 'myserver'){
$cmd = $args -join ' '
plink [email protected]$server -i key.ppk $cmd
}
jedoch Powershell scheint zu glauben, dass mein erstes Argument ist mein $server
variabel.
Bedeutung, wenn ich meine Funktion wie verwenden: plk ls /folder
, PowerShell würde denken, dass ls
$server
ist.
Ich möchte das beheben, nur wenn ich tue: plk -server 'server' ls /folder
, PowerShell würde den Server wechseln, und mit plk ls /folder
würde meine Standard verwenden.
Hast du mein Skript versucht? –
ja, hat nicht funktioniert. es dachte, mein erstes Argument sei der Server. – GKman
Sie haben Recht, ich habe mein Skript geändert. Bitte versuche es erneut. –