Re[5]: Подлянка с -Path/-LiteralPath в PowerShell - что делать?
От: Евгений Музыченко Франция https://software.muzychenko.net/ru
Дата: 10.07.24 14:38
Оценка: +2
Здравствуйте, Shmj, Вы писали:

S>А здесь я что, указывают регулярное выражение? Нет, конечно — я указываю путь к файлу.


В -Path Вы указываете шаблон пути к файлу. Это [p]явно[/p] указано в описании параметра ("Wildcards are accepted"). Но Вы решили, что описание параметров — не для Вас, и дочитали только до примеров. Само по себе это не страшно — я тоже периодически так нарываюсь. А вот то, что подняли хай насчет "подлянки" вместо того, чтоб самого себя стукнуть по голове — это уровень тупого юзера, а не программиста.

S>те символы которые могут быть частью имени файла или папки — с чего вдруг трактуются как шаблон?


С того, что шаблон в PowerShell может содержать символы, допустимые в имени файла. Точно так же, регулярное выражение, применяемое к произвольному тексту, не накладывает никаких ограничений на символьный состав текста. Если Вас это удивляет, Вам необходимо углубить образование.

S>Это путь к файлу а не регулярное выражение.


Это шаблон пути к файлу. То есть, это текстовое выражение, описывающие множество подходящих под него путей.

S>Вы запутали человека выше — он подумал что проблема в экранировании символов


Я плохо знаком с синтаксисом PowerShell — возможно, там есть и возможность экранирования. Но экранирование не решает всех возможных проблем, поэтому и существует -LiteralPath.

ЕМ>>Наверное, потому, что "шаблонная" интерпретация символов в New-Item не имеет смысла, да?


S>Т.е. вы считаете это нормальным?


Абсолютно. Если Вы считаете это ненормальным, то Вы определенно занимаетесь не своим делом.

S>По идее нужно все-равно трактовать как шаблонные символы и выдавать ошибку.


С чего вдруг? New-Item создает конкретный объект с полностью определенным именем. Как Вы представляете себе создание объекта, имя которого представлено шаблоном? А Get-Item/Get-ChildItem выбирают множество существующих объектов, имена которых подпадают под заданное условие (шаблон).

S>С 1 по 9 пример — получение файлов по пути — везде указан -Path. LiteralPath ни в одном примере нет


 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.