Доброго времени суток. Как в Powershell экранировать звёздочку?
Работал с веткой реестра HKEY_CLASSES_ROOT\*\ , так он у меня всю ветку удалил. Такой засады от Билли я не ожидал.
UPD1: Альтернативное решение для своей задачи нашёл, возможно не самое изящное, но вдруг кому пригодится:
Get-ChildItem HKLM:\Software\classes\ | Where-Object -property PSChildName -eq "*"
UPD2: Get-ChildItem -LiteralPath HKLM:\Software\classes\*
Оно же работает на Set-Item и Set-ItemProperty
UPD3: Да здравствует маразм, универсальное решение найдено. Звёздочка в пути экранируется двумя бэктиками, т.е. ` (не путать с апострофом и кавычками). Напр., New-Item -Path "HKLM:\Software\classes\``*" -Name "test"
По всей видимости, первый бэктик экранирует второй и проходит через фильтр строки, а второй в свою очередь даёт знать интерпретатору, что звездочка - это обычный символ, а не символ подстановки.