Starten Sie den aktuell ausgeführten script?
Alrighty werden, also habe ich so viel runter.
# Prompts the script user to confirm that the account from
# $userName is indeed the one they want to Terminate
function Get-Confirmation {
[CmdletBinding(SupportsShouldProcess=$true)]
param (
[Parameter(Mandatory=$true)]
[String]
$userName
)
$confirmMessage = 'Are you sure that {0} is the user that you want to terminate?' -f $userName
$PSCmdlet.ShouldContinue($confirmMessage, 'Terminate User?')
}
# Code that populates $userName and starts the Termination process
if (Get-Confirmation -User $userName) {
# If confirmation == True: start Termination
# Copy user's security groups to $groups.txt in their user folder
Out-File $logFilePath -InputObject $userNameGroups.memberOf -Encoding utf8
# TODO: Remove $userName's security groups from AD Object
# Remove-ADGroupMember -Identity $_ -Members $userNameGroups -Confirm:$false
Copy-Item -Path "\\path\to\active\user\folder" `
-Destination "\\path\to\terminated\user\folder"
} else {
# Don't Terminate
# TODO: Restart script to select another user
}
Also meine Frage ist: wie kann ich erfüllen Sie die Aufgaben in der else
Aussage? Ich habe online recherchiert, aber die einzige Sache, die gekommen ist, den computer neu zu starten. Ich will einfach nur das Skript erneut ausgeführt werden. Ist es so einfach wie ./scriptName
?
- Warum würden Sie brauchen, um das Skript neu starten? Warum nicht einfach haben, die wenn-dann in einer while-Schleife?
- Wenn der Benutzer die Eingabe war falsch, es würde neu starten, eine Eingabeaufforderung zur Eingabe eines anderen Benutzernamens. Ich bin über dieses denken der falsche Weg ist?
- Ja. Weisen Sie den Rückgabewert der Funktion einer Variablen, so können Sie das Ergebnis in mehr als einem Ort.
- Es macht alles Sinn jetzt, danke!
Du musst angemeldet sein, um einen Kommentar abzugeben.
Eher als "Neustart" Ihr Skript, das Sie überprüfen könnten, dass die Eingabe korrekt ist, bevor Sie auch "Starten" Ihr Skript, wenn alle Eingabe korrekt ist, wird es keine Notwendigkeit, "Neustart" 🙂
Hier eine Do-While-Schleife wird verwendet, um zu überprüfen, ob ein Benutzername existiert in der ANZEIGE, bevor Sie das Skript unter: