PS PowerShell  ·  20 вопросов  ·  ~55 мин  ·  ⏱ Таймер 55:00  ·  Лёгкий  · 

Файлы и пути

Файлы и пути: практический тест по PowerShell с чтением кода, поиском причины ошибки и выбором надёжного решения. Темы: Файловый провайдер FileSystem, Обход объектов через Get-ChildItem, Copy и Move, Безопасное удаление. Базовая линия — PowerShell 7.6.3; Windows-зависимые команды и отличия Windows PowerShell 5.1 отмечены в условиях.

Отвечено: 0 из 20
⏱ --:--
0%
💡 Инструкция: Выберите один ответ из пяти. На 20 вопросов отведено 55 минут. В каждом вопросе верен только один вариант; близкие ответы различаются механизмом, порядком выполнения, областью действия или эксплуатационной границей. После завершения вы увидите общий результат, результаты по 4 тематическим шкалам и подробные объяснения.
Вопрос 1 из 20
Команда Get-ChildItem выполняется после перехода в Cert:. Какой вывод был бы слишком сильным?
PowerShellКоманда Get-ChildItem выполняется после перехода в Cert:
Push-Location Cert:\CurrentUser
try { Get-ChildItem | Select-Object -First 1 } finally { Pop-Location }
Вопрос 2 из 20
Test-Path проверяет путь с префиксом Env:. Какое объяснение не зависит от случайностей окружения?
PowerShellTest-Path проверяет путь с префиксом Env:
$result = Test-Path Env:HOME
$summary = [ordered]@{ IsNull=($null -eq $result); Count=@($result).Count }
if($null -ne $result){$summary.Type=$result.GetType().FullName};[pscustomobject]$summary
Вопрос 3 из 20
Как получить физический путь текущего расположения?
PowerShellНужно получить физический путь текущего расположения
$result = Convert-Path .
$summary = [ordered]@{ IsNull=($null -eq $result); Count=@($result).Count }
if($null -ne $result){$summary.Type=$result.GetType().FullName};[pscustomobject]$summary
Вопрос 4 из 20
Сценарий принимает произвольный PSPath, но вызывает .NET File API. Что остаётся непроверенным после успешного запуска?
Вопрос 5 из 20
Команда использует wildcard в -Path. Что точнее всего описывает поведение?
Вопрос 6 из 20
Как найти файлы рекурсивно и отфильтровать расширение на стороне провайдера?
PowerShellНужно найти файлы рекурсивно и отфильтровать расширение на стороне провайдера
$result = Get-ChildItem -Path . -File -Recurse -Filter *.json
$summary = [ordered]@{ IsNull=($null -eq $result); Count=@($result).Count }
if($null -ne $result){$summary.Type=$result.GetType().FullName};[pscustomobject]$summary
Вопрос 7 из 20
Используется -Depth 1 вместе с -Recurse. Какое ограничение здесь нельзя упустить?
PowerShellИспользуется -Depth 1 вместе с -Recurse
$result = Get-ChildItem . -Directory -Recurse -Depth 1
$shape = if($null -eq $result){'<null>'}elseif($result -is [array]){'array'}else{$result.GetType().Name}
[pscustomobject]@{ Shape=$shape; Values=@($result) }
Вопрос 8 из 20
Скрытые файлы не попали в результат. Какой вывод был бы слишком сильным?
PowerShellСкрытые файлы не попали в результат
$result = Get-ChildItem . -Force
$shape = if($null -eq $result){'<null>'}elseif($result -is [array]){'array'}else{$result.GetType().Name}
[pscustomobject]@{ Shape=$shape; Values=@($result) }
Вопрос 9 из 20
Сценарий предполагает, что Name уникально во всём дереве. Что стоит изменить в первую очередь?
Вопрос 10 из 20
Рекурсивный обход следует за ссылками и точками повторного анализа. Какой вывод был бы слишком сильным?
Вопрос 11 из 20
Copy-Item копирует каталог без содержимого. Где заканчивается гарантия этого механизма?
PowerShellCopy-Item копирует каталог без содержимого
$result = Copy-Item -LiteralPath .\src -Destination .\backup -Recurse
$items = @($result)
[pscustomobject]@{ Count=$items.Count; First=$items | Select-Object -First 1; IsNull=($null -eq $result) }
Вопрос 12 из 20
Move-Item переносит файл между томами. Какой вывод был бы слишком сильным?
PowerShellMove-Item переносит файл между томами
$result = Move-Item -LiteralPath D:\stage\a.bin -Destination E:\archive\a.bin
$summary = [ordered]@{ IsNull=($null -eq $result); Count=@($result).Count }
if($null -ne $result){$summary.Type=$result.GetType().FullName};[pscustomobject]$summary
Вопрос 13 из 20
В назначении уже существует файл. Какое условие нужно проверить отдельно?
Вопрос 14 из 20
Путь содержит квадратные скобки. Какой принцип PowerShell здесь работает?
Вопрос 15 из 20
Копирование большой партии должно быть повторяемым. Какое объяснение не зависит от случайностей окружения?
Вопрос 16 из 20
Remove-Item получает путь из переменной, которая неожиданно равна корню. Какой вариант точнее выражает контракт?
PowerShellRemove-Item получает путь из переменной, которая неожиданно равна корню
$target="C:\Temp\job-42"
if((Resolve-Path $target).Path -notlike "C:\Temp\job-*" ){ throw "unsafe target" }
Вопрос 17 из 20
Удаление тестируется с -WhatIf. Какое утверждение верно для этого случая?
PowerShellУдаление тестируется с -WhatIf
$result = Remove-Item -LiteralPath .\cache -Recurse -WhatIf
$summary = [ordered]@{ IsNull=($null -eq $result); Count=@($result).Count }
if($null -ne $result){$summary.Type=$result.GetType().FullName};[pscustomobject]$summary
Вопрос 18 из 20
Как удалить только старые файлы, не каталоги?
Вопрос 19 из 20
Удаление выполняется по результатам устаревшего списка. Что остаётся непроверенным после успешного запуска?
Вопрос 20 из 20
Как возможность восстановления?

Ответьте на все 20 вопросов, чтобы получить результат

🔗 Встроить тест на свой сайт (iframe) ▼

Скопируйте код и вставьте в любое место на вашем сайте:

Также доступна прямая ссылка на embed-страницу