Как подружить консоль PowerShell c квадратными скобками

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

CMD

Для примера создадим в корне пользовательского раздела папку с именем [data], закинем в нее два файла и попробуем вывести ее содержимое командой Get-ChildItem "E:\[data]". Ошибки нет, но нет и результата выполнения команды. Но если мы заменим командлет вывода содержимого командлетом перехода в папку Set-Location, то получим ошибку «путь не существует».

Set-Location

Причина ошибки даже очень проста.

Дело в том, что квадратные скобки в консоли PowerShell используются в качестве подстановочных символов, например, при поиске файлов с определенными именами.

Используя в приведенном выше примере квадратные скобки, мы даём команду вывести содержимое не папки [data], а ее родительского объекта, то есть корня диска, вернее, только тех файлов и папок, которые имеют названия d, a или t. По этой причине лучше не использовать в путях нестандартные или экзотические символы, а если без них уж никак, либо экранируйте их в PowerShell с помощью обратного апострофа (`), либо добавляйте специальный параметр LiteralPath.

Последний сообщает PowerShell, что подстановочные символы, если, конечно, вы имеете дело именно с подстановочными символами, а не с какими-либо другими, должны обрабатываться как обычный текст.

Выполняем команду Get-ChildItem -LiteralPath "E:\[data]" и без проблем получаем список файлов в папке [data].

LiteralPath

Параметр LiteralPath поддерживается практически всеми командлетами, чего нельзя сказать об экранирующих кавычках.

Window Resizer — портативная утилита для восстановления размера и координат окон в Windows 10

Существует несколько способов изменения размера окна и его местоположения на рабочем столе, но чаще всего Читать далее

Сообщение «Компьютер загружен с установочного носителя Windows» — в чем причина и как обновить систему

Обновить Windows до новой версии можно не только через штатный Центр обновления. Пользователь может записать Читать далее

Как устранить запуск восстановления Windows в системах UEFI, если место загрузчика VeraCrypt занял загрузчик Windows

Как известно, популярная программа VeraCrypt умеет не только создавать зашифрованные контейнеры, но и шифровать целые Читать далее

TenStartMenuFixer — простейшая утилита для восстановления меню Пуск Windows 10 в Windows 11

Кардинально переработанное меню Пуск Windows 11 — самый обсуждаемый графический компонент обновленной операционной системы, получивший Читать далее

Оцените Статью:

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (Пока оценок нет)
Загрузка...

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *