Скрипт, работающий в ISE, но не в коде Visual Studio, проблема со скриптом или с кодом VS? - PullRequest
0 голосов
/ 20 февраля 2019

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

function calculate-circle{ 
$pi = 3.14
[float]$radius = read-host "What is the radius?"

$surface = $radius*$radius*$pi
write-host "The surface area of a circle with radius $radius is $surface"

}

В ISE Powershell это выполняется без изъянов, и я могу ввести радиус и прийтис расчетами.

В VS Code я получаю следующее, выделив весь скрипт и запустив его, используя горячую клавишу для «Выполнить выделенный текст в активном терминале».

PS C:\> function calculate-circle{
Missing closing '}' in statement block or type definition.
At line:0 char:0
PS C:\>     $mypi = 3.14
PS C:\>     [float]$radius = read-host "What is the radius?"
What is the radius?:
PS C:\>     $surface = $radius*$radius*$mypi
PS C:\>     write-host "The surface area of a circle with radius $radius is $surface"
The surface area of a circle with radius 0 is 0
PS C:\> }
At line:1 char:1
+ }
+ ~
Unexpected token '}' in expression or statement.

То, что я не могу понятьЭто проблема моего кода или это какая-то особенность Powershell в VS Code?Я действительно наслаждался некоторыми функциями VS Code, поэтому я немного раздражен.Спасибо за тонну!

1 Ответ

0 голосов
/ 20 февраля 2019

Используя команду Terminal: Run Selected Text In Active Terminal из палитры команд, также доступную как Run Selected Text из меню Terminal, отправляет и выполняет строки выбора индивидуально , что не работает с многострочнымфрагменты, такие как определения функций.

Вместо этого используйте команду PowerShell: Run Selection, которая поставляется с расширением PowerShell, которое по умолчанию связано с горячей клавишей F8 , как в ISE;Вы также можете получить к нему доступ из контекстного меню выбора, используя команду Run Selection.

...