В. Как выяснить назначение какой-либо команды в Windows PowerShell?

О. , если нужно выполнить команду Get-Process и направить вывод в команду Stop-Process, но пользователь не уверен, какое действие в действительности выполнит команда, можно добавить "-whatif" в конце команды. При этом будет показан результат операции, но сама команда выполнена не будет, как в следующем примере:

PS C:Documents and SettingsAdministrator> get-process | stop-process
-whatif
What if: Performing operation "Stop-Process" on Target "alg (1872)".
What if: Performing operation "Stop-Process" on Target "certsrv
(1036)".
What if: Performing operation "Stop-Process" on Target "csrss (660)".
What if: Performing operation "Stop-Process" on Target "csrss (3028)".
What if: Performing operation "Stop-Process" on Target "ctfmon (1880)".
What if: Performing operation "Stop-Process" on Target "ctfmon (2612)".
What if: Performing operation "Stop-Process" on Target "Dfsr (1864)".
What if: Performing operation "Stop-Process" on Target "dfssvc (1164)".
What if: Performing operation "Stop-Process" on Target "dmadmin
(2096)".
What if: Performing operation "Stop-Process" on Target "dns (1204)".
What if: Performing operation "Stop-Process" on Target "explorer
(216)".

В этом примере показано, что если выполнить команду без -whatif, то она остановит все процессы в компьютере (очень быстрое закрытие). Другой способ -- использовать -confirm вместо -whatif, чтобы получать запрос о подтверждении каждого действия, как в следующем примере:

PS C:Documents and SettingsAdministrator> get-process | stop-process -confirm

Confirm
Are you sure you want to perform this action?
Performing operation "Stop-Process" on Target "alg (1872)".
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help
(default is "Y"): l

Поделитесь материалом с коллегами и друзьями