💡 Инструкция: Выберите один ответ из пяти. На 20 вопросов отведено 55 минут. В каждом вопросе верен только один вариант; близкие ответы различаются механизмом, порядком выполнения, областью действия или эксплуатационной границей. После завершения вы увидите общий результат, результаты по 4 тематическим шкалам и подробные объяснения.
Вопрос 1 из 20
Как объяснить, почему Get-Service легко обнаружить по назначению и чем имя отличается от псевдонима sc?
PowerShell Нужно объяснить, почему Get-Service легко обнаружить по назначению и чем имя отличается от… Копировать
$result = Get-Command Get-Service | Select-Object Name, Verb, Noun, CommandType
$shape = if($null -eq $result){'<null>'}elseif($result -is [array]){'array'}else{$result.GetType().Name}
[pscustomobject]@{ Shape=$shape; Values=@($result) }
Обязательный параметр может быть запрошен у пользователя в интерактивном сеансе; в автоматизации значения нужно передавать явно, чтобы сценарий не зависал.
Get-Verb возвращает утверждённые глаголы и их группы; это надёжнее, чем делать вывод по наличию похожего командлета.
Имя командлета следует схеме Verb-Noun: утверждённый глагол описывает действие, существительное — объект; псевдоним может быть короче, но хуже передаёт намерение.
Для общедоступной функции лучше выбрать утверждённый глагол, например Get-Server; неутверждённый глагол работает, но ухудшает поиск и вызывает предупреждения анализаторов.
При сопровождении сценария стоит раскрыть псевдоним через Get-Alias и заменить его полным именем командлета, чтобы код не зависел от неоднозначных сокращений.
Вопрос 3 из 20
Как проверить, считается ли Restart утверждённым глаголом, не запоминая список наизусть?
PowerShell Нужно проверить, считается ли Restart утверждённым глаголом, не запоминая список наизусть Копировать
$result = Get-Verb Restart | Format-List Verb, Group, Description
$shape = if($null -eq $result){'<null>'}elseif($result -is [array]){'array'}else{$result.GetType().Name}
[pscustomobject]@{ Shape=$shape; Values=@($result) }
При сопровождении сценария стоит раскрыть псевдоним через Get-Alias и заменить его полным именем командлета, чтобы код не зависел от неоднозначных сокращений.
Get-Verb возвращает утверждённые глаголы и их группы; это надёжнее, чем делать вывод по наличию похожего командлета.
Схема Verb-Noun не делает функцию удачной автоматически: широкую операцию лучше разложить на команды с узким контрактом и предсказуемым выводом.
Для общедоступной функции лучше выбрать утверждённый глагол, например Get-Server; неутверждённый глагол работает, но ухудшает поиск и вызывает предупреждения анализаторов.
Get-Help Get-ChildItem -Examples показывает раздел примеров; это точнее, чем искать фрагменты по истории консоли.