C'è un modo per creare un parametro in una funzione di PowerShell in cui è necessario chiamarlo per poterlo considerare?Creare una funzione con variabili di chiamata opzionali
Un esempio dato dal commandlet (il grassetto essere ciò che voglio fare):
Invoke-Command
-computername
Server01
-Scriptblock
{...}
Ecco un esempio di quello che voglio fare con la funzione
Function DoStuff($computername, -arg2, -domain $domain)
Test-parameter(-domain) if (-domain -eq $true) {
use $domain
}
Else {
$domain = "Domain1"
}
test-parameter($arg2) {
if ($arg2 -eq $true) {
Do something
}
else {
Do the opposite
}
}
Quindi in sintesi:
Se "-arg2" è presente, voglio che qualcosa accada nello script. Se "-Domain" è presente e ha un argomento con esso, voglio che sia usato piuttosto che l'argomento set.
Perfetto Grazie una tonnellata! – user100541
Si noti che i parametri '[string]' sono inizializzati con la stringa vuota e non sono '$ null'. Devono essere testati con '-eq ''' – helb