Навыки powershell-windows
📦

powershell-windows

Безопасно ⚙️ Внешние команды

Освойте шаблоны скриптов PowerShell для Windows

Избегайте распространённых ошибок PowerShell, вызывающих сбои скриптов. Изучите правильный синтаксис операторов, обработку ошибок и шаблоны для Windows для надёжной автоматизации.

Поддерживает: Claude Codex Code(CC)
📊 71 Адекватно
1

Скачать ZIP навыка

2

Загрузить в Claude

Перейдите в Settings → Capabilities → Skills → Upload skill

3

Включите и начните использовать

Протестировать

Использование «powershell-windows». Проверить существование файла или каталога

Ожидаемый результат:

Используйте: if ((Test-Path "file.txt") -or (Test-Path "folder")) - Каждая cmdlet должна быть обёрнута в скобки при использовании логических операторов

Использование «powershell-windows». Безопасно получить длину массива

Ожидаемый результат:

Используйте: if ($array -and $array.Count -gt 0) - Всегда проверяйте существование массива перед доступом к свойствам

Использование «powershell-windows». Преобразовать вложенный объект в JSON

Ожидаемый результат:

Используйте: $data | ConvertTo-Json -Depth 10 - Всегда указывайте параметр глубины для вложенных объектов, чтобы избежать усечения

Аудит безопасности

Безопасно
v1 • 2/24/2026

Static analysis detected 34 patterns but all are false positives. The SKILL.md file is documentation only, containing PowerShell syntax examples and best practices. No executable code or security risks present. The skill is a reference guide for proper PowerShell scripting patterns on Windows.

1
Просканировано файлов
173
Проанализировано строк
1
находки
1
Всего аудитов
Проверено: claude

Оценка качества

38
Архитектура
100
Сопровождаемость
85
Контент
34
Сообщество
100
Безопасность
91
Соответствие спецификации

Что вы можете построить

Скрипты DevOps-инженера

Создание надёжных скриптов автоматизации для Windows с правильной обработкой ошибок и безопасностью null для CI/CD конвейеров

Справочник системного администратора

Быстрый справочник по правилам синтаксиса PowerShell и распространённым ошибкам при поддержке устаревших скриптов

Ресурс для обучения разработчиков

Изучение лучших практик PowerShell и избежание распространённых ошибок при добавлении Windows-скриптов в ваш инструментарий

Попробуйте эти промпты

Вопрос о базовом синтаксисе
Каков правильный синтаксис PowerShell для проверки существования файла ИЛИ другого условия?
Шаблон обработки ошибок
Покажите правильный шаблон try-catch-finally для скриптов PowerShell, которым нужно очищать ресурсы
Проверка безопасности null
Как безопасно проверить наличие элементов в массиве перед доступом к его свойству Count в PowerShell?
Операции с JSON-файлами
Каков правильный способ чтения и записи JSON-файлов в PowerShell со вложенными объектами?

Лучшие практики

  • Оборачивайте каждую cmdlet в скобки при использовании логических операторов -or и -and
  • Всегда проверяйте на null перед доступом к свойствам или методам объекта
  • Используйте Join-Path для построения путей к файлам вместо конкатенации строк
  • Устанавливайте ErrorActionPreference соответствующим образом для вашей среды (Stop для разработки, Continue для продакшена)
  • Указывайте параметр -Depth при преобразовании вложенных объектов в JSON

Избегать

  • Использование символов unicode или эмодзи в скриптах PowerShell - используйте ASCII-маркеры вроде [OK]
  • Доступ к свойствам без проверок на null - вызовет ошибки времени выполнения на null значениях
  • Использование ConvertTo-Json без параметра -Depth - вложенные объекты будут усечены
  • Размещение операторов return внутри блоков try - используйте finally для очистки и return после

Часто задаваемые вопросы

Почему логические операторы PowerShell требуют дополнительных скобок?
PowerShell анализирует cmdlet и операторы иначе, чем другие языки. Каждый вызов cmdlet должен быть обёрнут в скобки, чтобы парсер правильно определил, где заканчивается каждая команда перед применением логического оператора.
Каков самый безопасный способ работы с путями к файлам в PowerShell?
Используйте Join-Path вместо конкатенации строк. Это корректно обрабатывает разделители путей в разных версиях Windows и избегает проблем с обратными слешами в конце.
Почему следует избегать символов unicode в скриптах PowerShell?
Символы Unicode могут вызывать ошибки анализа на системах с разными кодировками. Использование ASCII-маркеров вроде [OK], [WARN] или [ERROR] обеспечивает совместимость во всех средах Windows.
Какую ErrorActionPreference использовать в продакшене?
Используйте 'Continue' в продакшене, чтобы скрипты могли обрабатывать ошибки корректно. Используйте 'Stop' во время разработки для раннего обнаружения проблем. Используйте 'SilentlyContinue', когда ошибки ожидаются и обрабатываются.
Как правильно преобразовывать вложенные объекты в JSON?
Всегда указывайте параметр -Depth с ConvertTo-Json. Глубина по умолчанию равна 2, что усечает вложенные объекты. Используйте -Depth 10 или выше для глубоко вложенных структур.
Каков правильный шаблон для безопасного доступа к массиву с проверкой null?
Проверяйте и массив, и его количество: if ($array -and $array.Count -gt 0). Это предотвращает ошибки, когда массив null или undefined перед доступом к свойству Count.

Сведения для разработчиков

Автор

sickn33

Лицензия

MIT

Ссылка

main

Структура файлов

📄 SKILL.md