2016-08-25 17 views

Odpowiedz

1

Korzystając z funkcji i parametrów, możemy zrobić coś, co myślę, że robisz.

przykładu funkcja:

function WriteUser 
{ 
    param($user = "A User", 
    $message = "Message") 
    Write-Host $user 
    Write-Host $message 
} 

wywołanie funkcji bez parametrów

WriteUser 

daje wynik:

Użytkownikiem

Wiadomość

WriteUser -user "Me" -message "Error"

byłoby napisać następujące:

Me

błędach

Kilka dodatkowych uwag, robisz nie muszą używać nazw parametrów.

WriteUser "Bob" "All Systems Go" would work by the order of the parameters. 

Można zmienić kolejność wymienionych parametrów, a także:

WriteUser -message "Error" -user "user, user" 

a funkcja wprowadzi do odpowiedniego parametru.

W przeciwnym razie, uważam, że trzeba coś zrobić, aby zbliżyć potrójny zachowania jak:

function Like-Tern 
{ 
    for ($i = 1; $i -lt $args.Count; $i++) 
    { 
     if ($args[$i] -eq ":") 
     { 
      $coord = $i 
      break 
     } 
    } 

    if ($coord -eq 0) { throw new System.Exception "No operator!" } 
    $toReturn 
    if ($args[$coord - 1] -eq "") 
    { 
     $toReturn = $args[$coord + 1] 
    } 
    else 
    { 
     $toReturn = $args[$coord -1] 
    } 

    return $toReturn 
} 

Credit for the idea here Plik funkcja może również obejmować:

Set-Alias ~ Like-Tern -Option AllScope 

I wtedy byłoby używać go jak :

$var = ~ $Value : "Johnny" 

Oczywiście, ~ był całkowicie arbitralny, ponieważ nie mogłem uzyskać ${ do pracy ...

Powiązane problemy