Я использую Windows 7 RTM. PowerShell 2.0 установлен по умолчанию. Я использую превосходный Windows PowerShell ISE для редактирования своих сценариев. У меня есть следующий сценарий:
Param($p) Param($d) echo $p $d
Я сохранил сценарий под именем SayItAgain.ps1. Когда я пытаюсь запустить этот сценарий из интерактивной оболочки, например:
./SayItAgain -p «Hello»
я получаю следующую ошибку:
Термин ‘Param’ не распознан как имя команды, функции, файла сценария или работающей программы. Проверьте правильность написания имени или, если был указан путь, проверьте правильность пути и повторите попытку.
At C:usersciusCodepowershellSayItAgain.ps1:2 char:6 + Param
Это известная проблема или я просто неправильно ее использую?
42 2009-08-22T04:28:13+00:00 4
Peter Mortensen
Редактировал вопрос 19-го июня 2019 в 12:38
Комментарии к вопросу (2)
Востребованные видео
[FIXED] Dotnet Incompatible Version
3 года назад
3 года назад
2 года назад
4 года назад
10 лет назад
5 лет назад
12 лет назад
12 лет назад
9 лет назад
11 лет назад
David Longnecker
Ответ на вопрос
22-го августа 2009 в 4:45
2009-08-22T04:45:35+00:00
Дополнительно
Если ваша param($p) не является первой строкой в вашем сценарии, это может привести к ошибке Param.
Убедитесь, что ваша param($p) является первой строкой.
Peter Mortensen
Редактировал ответ 21-го августа 2018 в 2:20
Комментарии к ответу ( 4 )
Решение / Ответ
John Ingle
22-го августа 2009 в 3:54
2009-08-22T15:54:43+00:00
Visual Studio 2022 Not Showing .NET 6 Framework
Дополнительно
Я решил проблему. Я’исправил описание проблемы, чтобы сделать его точным.
Источник проблемы в том, что я неправильно использовал ключевое слово Param несколько раз. Правильное использование заключается в объявлении нескольких параметров в одном объявлении Param, как показано ниже:
Param($p, $d)
Это использование объясняется в статье справки Windows PowerShell «about_Functions».
Peter Mortensen
Редактировал ответ 19-го июня 2019 в 12:39
Комментарии к ответу ( 0 )
Paul Rowland
Ответ на вопрос
10-го мая 2011 в 10:17
2011-05-10T22:17:56+00:00
Дополнительно
Запуск этого сценария,
cls param([string]$Url, [string]$Template=»CMSPUBLISHING#0″) Write-Host «Url: $Url»
я получил ту же ошибку
The term ‘param’ is not recognized as имя команды, функции, сценария файла или работающей программы. Проверьте написание имени, или, если был указан путь. включен, убедитесь, что путь > правильный, и повторите попытку. правильным и повторите попытку.
Когда я закомментировал cls в верхней части, все заработало,
#cls param([string]$Url, [string]$Template=»CMSPUBLISHING#0″) Write-Host «Url: $Url»
Источник: kzen.dev
Не удается включить миграцию для Entity Framework в VS 2017.NET Core
Я также создал папку под названием Models с классом в ней. Затем я пошел в консоль диспетчера пакетов и выполнил разрешения-миграции, чтобы VS создал файлы, необходимые для меня. Однако вместо необходимых файлов я получил следующую ошибку.
Термин «enable-migration» не распознается как имя командлета, функции, файла сценария или операционной программы. Проверьте правильность написания имени или, если включен путь, проверьте правильность пути и повторите попытку.
Что я должен здесь делать?
Кажется, мне не повезло. Это очень необычная комбинация (Core VS17 и EF), поэтому практически нет информации по этому вопросу. В некоторых руководствах говорится об изменении пакета package.json вручную, что довольно сложно, потому что VS 2017, похоже, обновляет Core, так что восстановление в dotnet не ищет его, а скорее для xxx.csproj.
В целом, я смущен и довольно неопределен, как укусить проблему.
Источник: overcoder.net
Как устранить ошибку [термин «pwsh.exe» не распознается как имя командлета, функции, файла сценария или работающей программы]?
При создании нового конвейера в Azure DevOps для настройки CI для проекта .NET я настроил следующий сценарий PowerShell для автоматизации установки .NET Core.
$ErrorActionPreference = «Stop» $ProgressPreference = «SilentlyContinue» # $LocalDotnet is the path to the locally-installed SDK to ensure the # correct version of the tools are executed. $LocalDotnet = «» # $InstallDir and $CliVersion variables can come from options to the # script. $InstallDir = «./cli-tools» $CliVersion = «1.0.1» # Test the path provided by $InstallDir to confirm it exists. If it # does, it’s removed. This is not strictly required, but it’s a # good way to reset the environment. if (Test-Path $InstallDir) < rm -Recurse $InstallDir >New-Item -Type «directory» -Path $InstallDir Write-Host «Downloading the CLI installer. » # Use the Invoke-WebRequest PowerShell cmdlet to obtain the # installation script and save it into the installation directory. Invoke-WebRequest ` -Uri «https://dot.net/v1/dotnet-install.ps1» ` -OutFile «$InstallDir/dotnet-install.ps1» Write-Host «Installing the CLI requested version ($CliVersion) . » # Install the SDK of the version specified in $CliVersion into the # specified location ($InstallDir). Downloading and installation of the SDK is complete.» # $LocalDotnet holds the path to dotnet.exe for future use by the # script. $LocalDotnet = «$InstallDir/dotnet»
Когда я пытаюсь запустить сборку, появляется следующая ошибка:
Я уже искал в Google людей, у которых есть такая же проблема, и как ее исправить. Но я еще не нашел много информации. Форум Azure DevOps тоже не помогает.
Комментарии (4)
Кстати, я использую dotnet core cli версии 2.1.500
это базовый вариант — его нет ни в одном каталоге $env:path в вашей текущей среде. Если вы хотите использовать бета-версию ядра PowerShell, вам, вероятно, придется установить его с ядром dotnet. powershell.exe является частью Windows, а pwsh.exe (пока) нет.
No Refunds No Returns
Чтобы это заработало, мне пришлось перезагрузить компьютер после установки PowerShell.
Источник: reddeveloper.ru