Не распознано как имя командлета функции файла сценария или выполняемой программы
Я только что сделал функцию Powershell и сохранил ее в файле ps1. Однако, когда я пытаюсь выполнить его из powershell, он не будет запущен.
Я уже изменил настройки для запуска неподписанного кода, введя эту команду:
что он делает, это создать текстовый файл, в котором перечислены все пути к определенному файлу.
Я поместил его непосредственно под c: и назвал файл listAllPaths, то же самое как функция.
когда я ввожу следующую команду внутри Powershell:
listAllPaths термин '.пс1 не распознано как командлет, функция, выполняемая программа или файл сценария. Проверьте термин и повторите попытку.
Я пробовал несколько вещей, и я честно не знаю, как заставить это работать? Я ожидаю, что файл будет создан по заданному пути, c: в этом образец. Этот файл с именем testingPDF.txt и содержимое, являющееся сгенерированным этим.
может кто-нибудь сказать мне, что я забыл здесь.
и нет, Google не отвечает на все. Уже пробовал. Я бы не пришел и не спросил его здесь, если бы я уже не попробовал онлайн-поисковые системы.
Это типичная ошибка на многих платформах, где путь к среде не включает текущий каталог. поэтому при выполнении скрипта (команды или программы и т. д.) среда выполнения выглядит везде, кроме текущего/рабочего каталога.
изменить: После прочтения ваших комментариев, я собираюсь предложить вам попробовать это. Я на самом деле не проверил логику вашего скрипта ПС. Я просто пытаюсь заставить твой сценарий исполниться. первый.
попробуйте отредактировать сценарий, как показано ниже, и выполните, как указано выше.
Я мог бы быть вне базы здесь, но это то, что ваш скрипт определение функция, а не ее выполнение? Возможно, вам нужно "source" скрипт:
. так что теперь ваша функция" listallpaths " определена.
Если вы замените "function listallpaths" на param и избавитесь от окружающего <>, как это..
У вас будет файл сценария, который вы можете вызвать по мере необходимости.
Как упоминал Мэтт, объявив функцию, когда вы вызывали скрипт, он создавал функцию, а затем выходил. Сценарий PowerShell-это в основном функция, хранящаяся в файле (без окружающих фигурных скобок.. они подразумеваются), где сама функция будет храниться в память.
add-migration: термин "add-migration" не распознается как имя командлета, функции, файла сценария или исполняемой программы. Проверьте правильность написания имени или, если включен путь, проверьте правильность пути и повторите попытку.
Это не совсем то, что имеет OP, но, по крайней мере, для ядра dotnet, это также может быть вызвано не установкой Microsoft.EntityFrameworkCore.Tools nuget Microsoft.EntityFrameworkCore.Tools , который используется для команд диспетчера пакетов в Visual Studio и команде линия.
ответил(а) 2017-11-18T12:17:00+03:00 3 года, 12 месяцев назадЧто я должен был сделать.
1) Инструменты → Nuget Package Manger → Настройки диспетчера пакетов
2) Вкладка "Общие"
3) Очистить все кеши NuGet
4) Перезапустить Visual Studio
ответил(а) 2017-09-03T00:47:00+03:00 4 года, 2 месяца назадУ меня была такая же проблема, и я просто закрыл консоль диспетчера пакетов, а затем перезапустил Visual Studio.
ответил(а) 2017-09-11T03:36:00+03:00 4 года, 2 месяца назадЯ подозреваю, что ваш проект по умолчанию должен быть установлен, как упоминал Кирк Ларкин в комментариях. Нажмите раскрывающийся список в проекте по умолчанию и установите его, на который когда-либо был установлен проект.
Также эта ссылка может помочь, если выпадающий список невыполненных проектов по умолчанию не будет заполнен. Выпадающий список Project Project Console по умолчанию для NuGet пуст
Надеюсь это поможет! Если не дайте мне знать, и я удалю ответ (я должен был использовать ответ, потому что не могу прокомментировать 50 репутации) Приветствия!
В консоли nuget проверьте, выбран ли выбранный проект по умолчанию. Задайте этот проект как проект запуска
Термин не признается в PowerShell
Если вы уже знакомы с PowerShell, вы сможете определить ошибку с помощью «термин не распознается как имя командлета». Если вы новичок в PowerShell, он еще некоторое время будет выглядеть бессмысленно.
Есть много вещей, которые могут пойти не так с командой PowerShell, но три специфические вещи являются наиболее распространенными. Это орфография, путь или модуль. Когда вы видите, что «термин не распознается как имя командлета», он, вероятно, будет одним из этих трех.
Орфографические ошибки в PowerShell
Если вы напишите что-то не так, PowerShell не сможет понять и выполнить. Это обычно труднее всего устранить, поскольку даже неправильное использование пробела может привести к отключению PowerShell. Когда это происходит, я считаю, что лучше всего выделить введенный текст, чтобы он немного выделялся, а затем перебирать его по буквам.
Если текста много или он вам не подходит, скопируйте его в Notepad ++ или другой текстовый редактор и проверьте его там. Повторите, если вы не видите ошибок, и повторите попытку. Не используйте Word или текстовый редактор, так как он мешает форматированию. Используйте простой текстовый редактор, такой как Блокнот или Блокнот ++.
Неправильный путь в PowerShell
Если вы ошиблись, PowerShell не сможет найти ваш скрипт. Например, если вы указываете PowerShell на определенную папку и вводите неправильную букву диска или указываете на общий ресурс, который недоступен, PowerShell не сможет выполнить свою задачу.
Это часто бывает, если вы пытаетесь выполнить командлет на удаленном компьютере. Если этот компьютер заблокирован или не разрешает удаленное выполнение определенных сценариев или изменений, произойдет ошибка. В большинстве случаев командлеты можно запускать удаленно, но некоторые организации разрешают запуск только сценариев высокого уровня. Все, что изменяет безопасность, политики или основные настройки, будет заблокировано. В этом случае вам нужно будет запустить скрипт локально.
Вы можете использовать «resol-path» или проверить путь вручную, чтобы увидеть, если это проблема с вашей командой.
Недостающие модули в PowerShell
Если модуль отсутствует или поврежден, PowerShell не сможет его выполнить. По умолчанию вам необходимо установить модули, чтобы использовать их. Если этот модуль отсутствует, поврежден или был перемещен, он может выдать «термин не распознается как имя командлета».
Вы можете использовать «get-module» в PowerShell, чтобы увидеть, присутствует ли модуль и работает ли он правильно. Он покажет вам, какие модули загружены, и вы можете добавить или восстановить в зависимости от ваших потребностей.
Использование PowerShell в Windows
Есть несколько полезных ресурсов для знакомства с PowerShell, например, эта страница на веб-сайте Microsoft Technet. Эта страница на Veeam также полезна для новичков в PowerShell. Он объясняет, что это такое, как его использовать, и предлагает много информации для новичков.
После запуска $ eval "$(ssh-agent -s)" я вижу unable to start ssh-agent service, error :1058 $ : Имя "$" не распознано как имя командлета, функции, файла сценария или выполняемой программы. Проверьте правильность написания имени, а также наличие и правильно сть пути, после чего повторите попытку. строка:1 знак:1
- CategoryInfo : ObjectNotFound: ($:String) [], CommandNotFoundException
- FullyQualifiedErrorId : CommandNotFoundException
Michael Chechelnitskiy, первый символ "$" не вводится. Строка начинается с eval
Ярослав Капинус, Ярослав, это понятно. я так и ввожу.
вот такой ответ: unable to start ssh-agent service, error :1058 eval : Имя "eval" не распознано как имя командлета, функции, файла сценария или выполняемой программы. Проверьте правильность написания имени, а также наличие и пра вильность пути, после чего повторите попытку. строка:1 знак:1
- CategoryInfo : ObjectNotFound: (eval:String) [], CommandNotFoundException
- FullyQualifiedErrorId : CommandNotFoundException
Скажите пожалуйста, какую операционную систему вы используете?
Команда eval является встроенной командой командной оболочки shell и не работает в windows. Рекомендую вам рассмотреть возможность перехода на Ubuntu. Это позволит избежать подобных проблем и проще находить ответы на вопросы. Для начала можно установить Ubuntu второй операционной системой и постепенно изучить её, эта ОС довольна проста в установке и настройке.
Максим Литвинов, Максим. В задании сказано поставить VSCode. Хотел поставить на Ubuntu, были проблемы и я спросил тут, мне ответили, что нужно ставить по Windows, я поставил, продолжаю делать задание, у меня проблема с eval, теперь вы говорите: делай на Ubuntu. Хорошо, но как поставить VSCode на Ubuntu?
Я предлагаю вам рассмотреть вариант перейти на ОС Ubuntu, т.к. ОС Windows плохо подходит для веб разработки. Работая на Windows, в дальнейшем будет возникать еще больше подобных вопросов, на которые сложно найти ответы. Если вы не готовы совсем отказаться от Windows, можно установить убунту второй ОС рядом с Windows. Тогда, когда вам нужна будет убунту, вы будете загружать компьютер с ОС Убунту. Затем, используя пакетный менеджер apt, вы сможете установить все вам необходимые программы. В интернете много подробных инструкций, по установке Убунту рядом с Windows. Например, вот.
Читайте также: