Получение VS-кода для работы больше похоже на PowerShell ISE

Я трачу больше времени на работу в PowerShell в последнее время, и я обнаружил, что мне очень нравится форма и функция Visual Studio Code С расширение PowerShell для этой работы над родной PowerShell ISE, за исключением одного небольшого бита:

в Исэ Я могу вызывать и исследовать переменные, массивы, хэши и другие сущности в коде, над которым я сейчас работаю, в командной строке ISE, но в коде VS, используя либо PowerShell Интегрированная консоль или powershell.exe консоль, я не получаю такую способность.

например:

в ISE я построил хэш-таблицу и изучаю синтаксис для ссылки на нее, пробуя различные вещи в консоли и "запуская" код, даже если он просто объявляет и создает хэш-таблицу, я могу ссылаться на это и исследовать его в консоли:

PowerShell ISE with some code and output

когда я пытаюсь сделать это в VS Code (тот же код, запустите скрипт в любой из консолей), я получаю эту ошибку, в основном отмечая, что массив, который я пытаюсь исследовать, не существует:

powershell console output in VS Code

Как я могу получить подобную функцию в VS коде? Или это вообще возможно?

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

15
задан music2myear
17.05.2023 14:46 Количество просмотров материала 2559
Распечатать страницу

2 ответа

проблема в том, что вы не точечный источник сценария, вы просто передаете путь сценария (за ваш комментарий к исходному сообщению)

что вы делаете: .\script.ps1 (просто указываем путь, ничего не вызываем скрипт для его запуска)

что нужно делать: . .\script.ps1 (поиск точек для загрузки содержимого сценария в сеанс).

вот я ужас выпуск:

enter image description here

вот это:

enter image description here

  1. первая строка-это я очищаю переменную от сессии
  2. вторая строка является подтверждением того, что переменная реплицирует вашу проблему (ожидается, так как переменная не существует в данный момент)
  3. Третья строка точка поиска сценарий, который содержит блок ниже (так же, как ваш скриншот), чтобы повторить, как вы приближаетесь к нему
  4. запуск того же самого поиска хэш-таблицы, приводящего к тому же выходу, который вы получаете от ISE

блок скрипта в testHash.ps1:

$hash_agencyOffices = @{
    Agency1 = @{
        Agency1 = @(
            "Aberdeen"
            "Sacramento"
            "Dallas"
            "Long Beach"
            "Tampa"
            "Seattle"
            "Vancouver"
        )
    }
    Agency2 = @{
        SubAgency1 = @(
            "Aberdeen"
            "Sacramento"
            "Dallas"
            "Long Beach"
            "Tampa"
            "South Bend"
            "Stevenson"
            "Tumwater"
            "Vancouver"
        )
        SubAgency2 = @(
            "Dallas"
            "Seattle"
            "Vancouver"
        )
    }
}
1
отвечен ferrell_io 2023-05-18 22:34

VS код с открытым исходным кодом. то, что вы пытаетесь сделать, не поддерживается Теперь, так что если вы хотите такую функцию, патчи всегда приветствуются. :)

2
отвечен Horn OK Please 2023-05-19 00:51

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх