Source имя source не распознано как имя командлета функции файла сценария или выполняемой программы

Обновлено: 03.07.2024

Я создал виртуальную среду вокруг своего проекта, но когда я пытаюсь ее активировать, я не могу. Это может быть просто синтаксис или расположение папки, но сейчас я в тупике.

Вы можете видеть ниже, я создаю virtualenv и называю его venv. Все в порядке, потом пытаюсь активировать, запустив source venv/bin/activate

Я думаю, это может быть связано с моим системным путем, но не уверен, на что его указать (я знаю, как редактировать путь). Я использую python 7 / windows os, виртуальный env 2.2.x

Эта документация действительно помогает как для систем Posix, так и для Windows: virtualenv.pypa.io/en/stable/userguide

source - это команда оболочки, предназначенная для пользователей, работающих в Linux (или любой Posix, но не в Windows).

В Windows virtualenv создает командный файл, поэтому вы должны запустить его venv\Scripts\activate вместо него (согласно документации virtualenv по сценарию активации ).

Изменить: трюк здесь для Windows не указывает расширение BAT:

PS C: \ DEV \ aProject \ env \ Scripts> &. \ Activate
(env) PS C: \ DEV \ aProject \ env \ Scripts>

Это также помогает virtualenv в системах Posix и Windoze. virtualenv.pypa.io/en/stable/userguide Я не вижу этот каталог "venv" после установки Python 2.7 в Windows. Совет? Я перешел по ссылке Blairg23, но не вижу скрипта «активировать» в моем каталоге «Scripts» Python. Я запустил, .\\venv\Scripts\activate.bat но команда просто передает Windows 10 без активации venv sysmbol (venv) C: \ myApp . в чем проблема

Я также столкнулся с той же проблемой на моем компьютере с Windows 10. Какие шаги я пробовал:

Перейдите к терминалу andconda Шаг 1

Вы можете проверить это с помощью инструмента паука в анаконде, набрав import tensorflow as tf

Это помогло вам решить проблему? Непонятно, говорите ли вы «это работает» или «у меня такая же проблема»

У меня такая же проблема. Я использовал Python 2, Windows 10 и Git Bash. Оказывается, в Git Bash вам нужно использовать:

У меня есть компьютер с Windows, и использование терминала Git Bash было единственным терминалом, который работал у меня. (Другими терминалами, которые я пытался использовать, были командная строка и терминал VS Code.)

Для активации вы можете перейти в venv каталог virtualenv с помощью cd venv .

Затем в Windows введите dir (в unix введите ls ). Вы получите 5 папок include , Lib , Scripts , tcl и 60

Теперь введите, .\Scripts\activate чтобы активировать свой virtualenv venv .

Ваше приглашение изменится, показывая, что теперь вы работаете в виртуальной среде. Это будет выглядеть примерно так (venv)user@host:

И ваш venv теперь активирован.

введите описание изображения здесь

Для окон введите в терминале "C: \ Users \ Sid \ venv \ FirstProject \ Scripts \ activate" без кавычек. Просто укажите местоположение вашей папки Scripts в вашем проекте. Итак, команда будет выглядеть так: расположение_папки_скриптов \ активировать.

Убедитесь, что venv есть, и просто следуйте приведенным ниже командам. Работает в Windows 10.

Перейдите по пути, в котором вы хотите разместить виртуальную среду:

Создайте виртуальную среду с именем «env»:

Добавьте путь к файлу игнорирования git (необязательно):

Активируйте виртуальный env:

Я чертовски много использую virtualenv в Windows с помощью git bash, я обычно в конечном итоге указываю двоичный файл python явно.

Оба предполагают, что ваш рабочий каталог содержит ваш virtualenv ( .env ).

Кроме того , некоторые вещи не ведут себя правильно кашлять _ansible_ кашель , когда virtualenv не активирован, поэтому если что - то странно , вы , возможно , придется активировать venv все равно :(

Вы можете запустить исходную команду на терминале cygwin

Если вы видите 5 папок ( Include , Lib , Scripts , tcl , pip-selfcheck ) после использования virtualenv yourenvname команды, измените каталог Scripts папки в CMD себя и просто использовать « активировать » команду.

откройте папку с любой консолью gitbash. например, используя консольную программу visualCode и Gitbash: 1) Установите Gitbash для Windows

2) с помощью VisualCode IDE, щелкните правой кнопкой мыши над проектом открыто в терминальной консоли опции

3) на оконной консоли в Visualcode ищем оболочку Select- > default и меняем ее на Gitbash

4) теперь ваш проект открыт с помощью консоли bash и правильного пути, поместите исходный код ./Scripts/activate

Кстати: . с пробелом = источник

введите описание изображения здесь

Небольшое напоминание, но на Win10 cmd у меня были неправильные косые черты. Согласно документации python команда активации: C:\> <venv>\Scripts\activate.bat когда вы просматриваете каталоги, это, например, cd .env/Scripts

Итак, чтобы создать свой Venv, я использовал python -m venv --copies .env и активировал .env\Scripts\activate.bat

Команда source официально предназначена для семейства операционных систем Unix , и в основном вы не можете использовать ее в Windows. вместо этого вы можете использовать venv\Scripts\activate команду для активации вашей виртуальной среды.

Сделал снимок экрана того, как команда venv \ Scripts \ activate работает правильно

Если вы используете Windows, используйте команду «venv \ Scripts \ activate» (без слова source), чтобы активировать виртуальную среду. Если вы используете PowerShell, вам может потребоваться использовать Activate с заглавной буквы.

Если вы используете ОС Windows, то в терминале Gitbash используйте следующую команду $ source venv / Scripts / activate. Это поможет вам войти в виртуальную среду.

Измените оболочку по умолчанию в терминале vs code на git bash.

теперь ваш проект открыт с консолью bash и правильным путем, поместите "source venv \ Scripts \ activate" в Windows

Я только что сделал функцию Powershell и сохранил ее в файле ps1. Однако, когда я пытаюсь выполнить его из powershell, он не будет запущен.

Я уже изменил настройки для запуска неподписанного кода, введя эту команду:

что он делает, это создать текстовый файл, в котором перечислены все пути к определенному файлу.
Я поместил его непосредственно под c: и назвал файл listAllPaths, то же самое как функция.

когда я ввожу следующую команду внутри Powershell:

listAllPaths термин '.пс1 не распознано как командлет, функция, выполняемая программа или файл сценария. Проверьте термин и повторите попытку.

Я пробовал несколько вещей, и я честно не знаю, как заставить это работать? Я ожидаю, что файл будет создан по заданному пути, c: в этом образец. Этот файл с именем testingPDF.txt и содержимое, являющееся сгенерированным этим.

может кто-нибудь сказать мне, что я забыл здесь.

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

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

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

попробуйте отредактировать сценарий, как показано ниже, и выполните, как указано выше.

Я мог бы быть вне базы здесь, но это то, что ваш скрипт определение функция, а не ее выполнение? Возможно, вам нужно "source" скрипт:

. так что теперь ваша функция" listallpaths " определена.

Если вы замените "function listallpaths" на param и избавитесь от окружающего <>, как это..

У вас будет файл сценария, который вы можете вызвать по мере необходимости.

Как упоминал Мэтт, объявив функцию, когда вы вызывали скрипт, он создавал функцию, а затем выходил. Сценарий PowerShell-это в основном функция, хранящаяся в файле (без окружающих фигурных скобок.. они подразумеваются), где сама функция будет храниться в память.

Anonim

Я пытался установить Azure с помощью Install-Module Azure в PowerShell. Получила следующую ошибку:

Почему PS не распознает базовый модуль установки? Без этого я даже не могу установить Azure. Что я должен делать?

Поскольку вы используете более раннюю версию PS:

Что вы можете сделать в вашем случае, так это сначала загрузить модуль в свою локальную папку.

Затем будет .psm1 файл в этой папке для этого модуля.

Это сделает вашу работу.

Другой вариант исправления этой ошибки на основе графического интерфейса пользователя - загрузить модули PowerShell PackageManagement (установщик msi) с веб-сайта Microsoft и установить модули.

Вам следует установить последнюю версию PowerShell, а затем использовать эту команду Install-Module Azure для установки лазурного модуля. Поскольку начиная с Powershell 5.0 вы сможете использовать командлет для Установить модуль, Сохранить модуль

Дополнительные сведения об установке Azure PowerShell см. По ссылке.

У меня Windows 10 и PowerShell 5.1 уже был установлен. По какой-то причине версия x86 работает и может найти "Install-Module", а другая версия - нет.


Вот что я испытываю между двумя разными версиями:


Если вы пытаетесь установить модуль, который указан в центральном репозитории для содержимого PS, который называется PowerShell Gallery, вам необходимо установить PowerShellGet. Тогда команда будет доступна. Сейчас я использую PS 4.0. Установка PowerShellGet помогла мне.

С помощью новейшего модуля PowerShellGet вы можете:

  • Поиск предметов в галерее с помощью Find-Module и Find-Script
  • Сохраняйте элементы в вашей системе из галереи с помощью модуля сохранения и сценария сохранения
  • Устанавливайте элементы из галереи с помощью Install-Module и Install-Script
  • Загружайте элементы в галерею с помощью модуля публикации и сценария публикации
  • Добавьте свой собственный репозиторий с помощью Register-PSRepository

Еще одна отличная статья для начала работы с PS Gallery.

  • То же самое произошло и со мной - набор вручную вместо копирования и вставки спас день после 10 минут скрежета зубами. Спасибо за внимание

У меня не было поставщика пакетов NuGet, вы можете проверить, работает Get-PackageProvider :

Решение устанавливало его, выполнив эту команду:

Если это не удается с ошибкой ниже, вы можете скопировать / вставить папку NuGet с другого ПК (требуется администратор): C: \ Program Files \ PackageManagement \ ProviderAssemblies\ NuGet:

Я думаю, что приведенный выше ответ, опубликованный Джереми Томпсоном, является правильным, но у меня недостаточно репутации для комментариев. Как только я обновил nuget и powershellget, мне стал доступен Install-Module.

Что интересно, номера версий, возвращаемые get-packageprovider, не изменились после обновления.

Выполните следующие команды от имени администратора для установки NuGet используя Powershell:

У меня был старый сервер, на котором я не мог работать install-module поскольку версия PowerShell была 4.0. Вы можете проверить версию PowerShell с помощью командной строки PowerShell.

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

Anonim

Я пытался установить Azure с помощью Install-Module Azure в PowerShell. Получила следующую ошибку:

Почему PS не распознает базовый модуль установки? Без этого я даже не могу установить Azure. Что я должен делать?

Поскольку вы используете более раннюю версию PS:

Что вы можете сделать в вашем случае, так это сначала загрузить модуль в свою локальную папку.

Затем будет .psm1 файл в этой папке для этого модуля.

Это сделает вашу работу.

Другой вариант исправления этой ошибки на основе графического интерфейса пользователя - загрузить модули PowerShell PackageManagement (установщик msi) с веб-сайта Microsoft и установить модули.

Вам следует установить последнюю версию PowerShell, а затем использовать эту команду Install-Module Azure для установки лазурного модуля. Поскольку начиная с Powershell 5.0 вы сможете использовать командлет для Установить модуль, Сохранить модуль

Дополнительные сведения об установке Azure PowerShell см. По ссылке.

У меня Windows 10 и PowerShell 5.1 уже был установлен. По какой-то причине версия x86 работает и может найти "Install-Module", а другая версия - нет.


Вот что я испытываю между двумя разными версиями:


Если вы пытаетесь установить модуль, который указан в центральном репозитории для содержимого PS, который называется PowerShell Gallery, вам необходимо установить PowerShellGet. Тогда команда будет доступна. Сейчас я использую PS 4.0. Установка PowerShellGet помогла мне.

С помощью новейшего модуля PowerShellGet вы можете:

  • Поиск предметов в галерее с помощью Find-Module и Find-Script
  • Сохраняйте элементы в вашей системе из галереи с помощью модуля сохранения и сценария сохранения
  • Устанавливайте элементы из галереи с помощью Install-Module и Install-Script
  • Загружайте элементы в галерею с помощью модуля публикации и сценария публикации
  • Добавьте свой собственный репозиторий с помощью Register-PSRepository

Еще одна отличная статья для начала работы с PS Gallery.

  • То же самое произошло и со мной - набор вручную вместо копирования и вставки спас день после 10 минут скрежета зубами. Спасибо за внимание

У меня не было поставщика пакетов NuGet, вы можете проверить, работает Get-PackageProvider :

Решение устанавливало его, выполнив эту команду:

Если это не удается с ошибкой ниже, вы можете скопировать / вставить папку NuGet с другого ПК (требуется администратор): C: \ Program Files \ PackageManagement \ ProviderAssemblies\ NuGet:

Я думаю, что приведенный выше ответ, опубликованный Джереми Томпсоном, является правильным, но у меня недостаточно репутации для комментариев. Как только я обновил nuget и powershellget, мне стал доступен Install-Module.

Что интересно, номера версий, возвращаемые get-packageprovider, не изменились после обновления.

Выполните следующие команды от имени администратора для установки NuGet используя Powershell:

У меня был старый сервер, на котором я не мог работать install-module поскольку версия PowerShell была 4.0. Вы можете проверить версию PowerShell с помощью командной строки PowerShell.

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

Читайте также: