Bat не является внутренней или внешней командой исполняемой программой или пакетным файлом

Обновлено: 07.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

Причины ошибки «Не является внутренней или внешней командой» при выполнении команд в командной строке Windows 10 и Windows 11

Для того, чтобы понять суть ошибки, давайте рассмотрим, что происходит при выполнении команды в командной строке, в качестве примера будем использовать такой код:

Не является внутренней или внешней командой, исполняемой программой или пакетным файлом в командной строке

  1. В случае, если «команда» является собственной встроенной командой консоли (в качестве примера — cls), она выполняется с заданными параметрами.
  2. Если «команда» — это какой-то файл .exe, .cmd, .bat или иной, например, pip, python или adb, выполняется попытка его запуска из расположения, где запущена командная строка (выделено на изображении ниже) или из расположений, добавленных в системную переменную PATH (о которой поговорим подробнее далее). При удачном запуске и правильно переданных параметрах команда выполняется.

Отсюда следуют наиболее распространённые причины появления ошибки при выполнении команды:

  • Самая распространённая причина — отсутствие исполняемого файла в папке, где запущена командная строка и в папках, содержащихся в PATH.
  • Ошибки при написании команды: при ошибке в имени файла, он не будет найден, что и приведёт к указанной ошибке.
  • Файл отсутствует где-либо, например, вы пробуете использовать telnet, в то время, когда соответствующий компонент Windows не установлен.
  • Редко — запускаемый через командную строку файл действительно не является исполняемой программой: изначально сам по себе или из-за повреждений.

Теперь о том, что делать в рассматриваемой ситуации.

Для исправления ошибки «Не является внутренней или внешней командой, исполняемой программой или пакетным файлом» в зависимости от ситуации можно использовать следующие подходы.

Переход к папке с исполняемым файлом в командной строке

Если выполнение команды требуется не на регулярной основе, достаточно перейти в командной строке в папку, содержащую нужный файл, делается это следующим образом:

  1. Например, мы знаем, что python.exe для последней версии Python на момент написания этой статьи располагается в папкеpip.exe — там же во вложенной папке Scripts (если окажется не ясным, как попасть в эту папку, процесс показан в видео ниже), adb.exe — где-то в папке с platform-tools и так далее. Скопируйте этот путь, сделать это можно из адресной строки проводника.
  2. Если командная строка запущена на том же диске, где находится нужный исполняемый файл, введите команду вида:
  3. Если командная строка запущена на диске C:, а исполняемый файл находится на другом диске, то перед 2-м шагом используйте команду вида (здесь D меняем на нужную букву диска) D: с последующим нажатием Enter.
  4. Введите нужную команду, которая ранее сообщала об ошибке — теперь она должна выполниться успешно.

Добавление папки с программой в системную переменную среды PATH

В случае, когда использование команд требуется регулярно, например, для git, разумным будет добавить папку с этим исполняемым файлом в PATH, чтобы затем в любой момент времени выполнять команды, независимо от того, в какой папке открыта командная строка:

Примечание: если ошибка возникает при использовании команд python, обратите внимание, что при первоначальной установке вам предложат добавить необходимые пути в PATH (отметка Add Python to PATH), то же самое часто бывает и при установке других программ:

Добавление Python в PATH при установке

Установка недостающих компонентов

Иногда проблема возникает из-за того, что нужный файл попросту отсутствует на компьютере:

Включение клиента Telnet

  • Вы пробуете использовать команды telnet, но не зашли в Панель управления —Программы и компоненты — Включение или отключение компонентов Windows и не включили «Клиент Telnet».
  • Запускаете команды pyinstaller, но предварительно не установили его командой pip install pyinstaller
  • Пробуете использовать команды adb.exe, но не установили необходимые компоненты Android SDK Platform Tools.

Аналогичная ситуация может быть и для многих других, не входящих в стандартную поставку Windows 10 и Windows 11 компонентов, например, java.

Если ошибка возникает при запуске системных инструментов Windows

Видео инструкция

Надеюсь, статья и видео помогли разобраться с проблемой и помогли в её решении. Остаются вопросы? — задавайте их в комментариях, я постараюсь ответить.


Else не является внутренней или внешней командой
Здравствуйте, недавно захотелось создать батник по оптимизации ПК(я в этом деле новичок, не судите.

MSG не является внутренней или внешней командой - именно из пакетного файла
Голову сломил. Почему команда MSG из под интерпретатора работает нормально (ПУСК -&gt; Выполнить -&gt;.


Ошибка в паттерне sed. png не является внутренней или внешней командой, исполняемой программой или пакентным файлом
Здравствуйте. Использую cygwin, поэтому могу использовать sed. Не знаю, правильный ли это.

aivanger,
Во-первых
Выдрали кусок из какого-то кода и мы должны понять что надо?
Во-вторых
что за команда:
path %the_bat%\, где такое вычитали?
TheBat.exe /send*, TheBat.exe, если консольный вариант, где он, рядом с bat, если нет, надо путь к нему полный указывать, а или вы решили что командой: path %the_bat% вы попали в нужную папку - нет
чтобы в cmd попасть в нужную папку используется команда cd или cd /d (если еще и диск меняется) или pushd "Путь" и popd для возврата на путь до перехода. aivanger, я не привык ковыряться в чужом белье чужих кодах, особенно если они мне малопонятны по причине не знания изначальной задачи и идеи в целом. Поэтому так не пойдет. Возможно код придется переписывать полностью, но мне так легче и понятнее, а для этого мне надо знать точно что вы хотите сделать, полная задача, общая и конечная цель, где надо примеры: было так - надо (хочу, желательно, примерно) так.

Это очень хитрая команда :-)

И вот мы уже полностью переписали в этой сессии свой PATH.
И как итог наших безбашенных действий:
да лана тебе, ничего ужасного не произошло.
другое дело, что полезно не форум теребить из-за такой ерунды, а разобраться самому.
и установить в конце концов powershell core. Garry Galler, Для текущей сессии да, а так ничего страшного. Но там и без этого достаточно острых углов в коде.

Ошибка пользователя произошла из-за двусмысленности древнего синтаксиса cmd.

Вот что такое <PATH>, это команда установки значения переменной или команда для показа содержимого ?
Смешно, но оказалось, что и для того, и для другого.
Результат можно посмотреть в 1-ом посте.

Powershell - современная оболочка(*), в которой политика в части названий командлетов устраняет подобную двусмысленность:

Get-Item / Set-Item
Get-Content / Set-Content
Get-Date / Set-Date
.


-------------------------------
(*) Это не то чтобы какой-то прорыв в будущее; 40 лет назад, например, в DCL: Set File/Show file, Set Process/Show Process, Set User/Show user etc

path использую в коде, для того, что бы попасть в папку исполняющего файла, т.е.
path %the_bat%(перейти в папку the bat, путь прописан в переменной set the_bat=c:\the bat\)
далее запустить уже команду с нужными атрибутами.
Я правильно понимаю, что проблема в этой команде? Если я path заменю на команду cd проблема решится?


На будущее, как сделать 1 bat файл, с огромным меню на 30-50 кнопок с запуском каждого скрипта. Т.е. нажимаем в первом меню(bat файле) нужный пункт, закрывается этот bat и открывается следующий bat файл с меню(который мы обсуждаем здесь) далее идет последовательная обработка по пунктам.
Еще вопрос, как после выполнения sub1 вернуться в меню обратно? Т.е. выполнили sub1 вернулись в меню, нажади sub2 после его работы вернулись в меню и т.д.

При попытке открыть какую-либо команду через окно служебной программы или консоль, вы сталкиваетесь с ошибкой – «Имя файла» не является внутренней или внешней командой, исполняемой программой или пакетным файлом. Система упрямо не открывает файл по каким-то причинам и этот факт очень раздражает. Причиной этого может быть один из нескольких вариантов: неправильно указан путь к файлу и отсутствие компонента в системе вообще, т.е по указанному адресу его не существует.

Ошибка «Имя файла» не является

Первым делом необходимо указать точный путь переменной «Path» операционной системе, чтобы не возникало ошибок при открытии файла. Для этого нужно наверняка знать расположение папки. К примеру, обратимся к программе, которая в дальнейшем будет работать с исполняемым файлом в определенной папке.

Системная переменная Path

Указываем правильный путь в переменной path на ОС Windows 7

Чтобы правильно указать путь необходимо знать точное расположение файла. Если файл программы, который нужно открыть лежит на диске в С:\Program Files\Java\jdk 1.8.0.45\bin, тогда этот путь нужно скопировать и указать в системной переменной для последующего открытия.

Командная строка

  1. Далее нам понадобиться рабочий стол, наводим мышь на «Мой компьютер» и в контекстном меню выбираем «Свойства».
  2. Нажимаем «Дополнительные параметры» слева и выбираем пункт «Переменные среды».
  3. В открывшемся окне ищем строку «Path» нажимаем на нее и вставляем скопированные путь сюда.
  4. Действие нужно подтвердить кнопкой «Ок». Компьютер желательно перезагрузить, чтобы настройки точно вступили в силу. Откройте консоль и вбейте нужную команду. Ошибки быть не должно.

В том случае, если ошибка будет появляться снова, попробуйте перенести программу в рабочие директории диска с установленной операционной системой, например /System32. С этой директорией Виндовс работает чаще.

Также ошибки возникают из-за отсутствия компонентов программы. Устранить их можно дополнив нужными. Для примера возьмем компонент «Telnet». Чтобы его включить, перейдите:

  • На «Панель управления».
  • Дальше выберите «Включение и выключение компонентов».
  • Из списка выбираем «Клиент Telnet», напротив ставим галочку и нажимаем «Ок».
  • Компонент должен работать и ошибок возникать больше не должно.

Связано: Общие проблемы Windows 10 2004 и доступные исправления: Подробный список

Что означает «не распознается как внутренняя или внешняя команда»?


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

Ошибка «Не распознается как внутренняя или внешняя команда» вызывает:

1. Исполняемый файл или скрипт не установлены

Возможно, программа, которую вы хотите запустить из командной строки, неправильно установлена ​​в вашей системе. Наиболее частой причиной этого является поврежденный установщик. Либо этот, либо установленный исполняемый файл не находится в каталоге, в котором его ищет командный интерфейс.

2. Имя файла и путь указаны неверно.

3. Каталог файлов не найден в переменных среды Windows

Другая возможность заключается в том, что каталог файла, который вы пытаетесь выполнить, не существует в переменных среды Windows. Серия каталогов, известная как «Путь», находится в разделе «Системные переменные» в переменных среды Windows и требуется для выполнения команд. Здесь также должен находиться ваш файловый каталог, особенно если вы не указываете полный путь к вашему файлу в командной строке.

Но некоторые программы, вирусы и вредоносные программы могут изменять эти переменные среды. Если это произойдет, командная строка не сможет распознать команды или выполнить их.

4. Исполняемые файлы в system32 не найдены в 64-битной Windows

Для тех, кто использует 64-битную Windows, может быть другая потенциальная причина ошибки.

По умолчанию «Путь» переменных среды Windows содержит папку C: Windows System32. Это означает, что при работе в 64-разрядной среде командная строка ищет каталог пути в C: Windows System32. Поэтому, если вы хотите запускать 32-битные программы, вы должны выполнять их в 32-битной среде.

Исправление ошибки «не распознается как внутренняя или внешняя команда» в основном связано с исправлением проблем, упомянутых выше. Имея это в виду, давайте рассмотрим исправления по одному.

Метод № 01: проверьте, установлена ​​ли программа

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

Нажмите Win + I, чтобы открыть Настройки, и выберите Приложения.


Выбрав Приложения и функции на левой панели, вы увидите список программ на правой панели.



Если программа не отображается здесь, откройте проводник (Win + E) и перейдите в следующую папку:
C: Windows System32

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

Когда вы пытаетесь запустить программу или исполняемый файл из командной строки, последний выполняет поиск в папке System32 и запускает файл. Но если файла нет, как это бывает с некоторыми программами, вы можете переместить его в папку System32. Вот как это сделать.

Примечание: Вам нужно будет войти в систему под учетной записью администратора для следующих целей.

Сначала перейдите в папку с программой и скопируйте все файлы, находящиеся в папке (выделите все файлы и нажмите Ctrl + C для этого). В нашем примере мы хотим запустить Microsoft Edge (msedge.exe) через командную строку и копируем все файлы, находящиеся в папке приложения.


И вставляем файлы (Ctrl + V) в папку C: Windows System32.

Теперь, если вы просто введете имя исполняемого файла, ваша команда будет работать без ошибок.


Метод № 03: укажите полный путь к файлу


Например, если вы пытаетесь запустить PowerToys.exe, расположенный в папке PowerToys на диске C, команда может выглядеть так:
C: PowerToys PowerToys.exe

Этот метод работает, только если в вашей команде нет пробелов. Но если где-то в пути к вашему файлу есть пробел, вам нужно сделать следующее.

Метод № 04: вставьте весь путь к файлу в двойных кавычках

Ошибка «Не распознается как внутренняя или внешняя команда» также может быть результатом неправильного использования командных строк, особенно при вставке путей к файлам.

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


Нажмите Win + R, чтобы открыть окно ВЫПОЛНИТЬ, и найдите «Панель управления».


Щелкните Система и безопасность.



На левой боковой панели нажмите Расширенные настройки системы.


В окне «Свойства системы» щелкните «Переменные среды» внизу.


Откроется окно «Переменные среды». Здесь в разделе «Системные переменные» щелкните, чтобы выбрать переменную с указанием «Путь», а затем щелкните «Изменить».


Теперь, чтобы добавить новое значение переменной (расположение файла), нажмите «Создать».


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


Вы можете сделать это, просто перейдя туда, где установлено ваше приложение (chrome.exe в нашем примере), и скопировав путь…


… И вставив его в окно переменных окружения;


Или через само окно переменных окружения. Для этого нажмите «Обзор».


Затем перейдите к папке, выберите ее и нажмите ОК.


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



Для этого просто введите следующую команду:
компакт-диск c: windows SysWOW64

Это изменит каталог, в котором командная строка ищет ваш 32-разрядный исполняемый файл.

Исправлено: Python не распознается как внутренняя или внешняя команда

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


Вы сможете запустить Python из командной строки.

Исправлено: команда Python открывает Microsoft Store

В Windows 10 многие также обнаружили, что иногда после добавления пути Python к переменным среды и запуска «python.exe» в командной строке возникает новая проблема. Вместо прямого открытия python.exe они переносятся в Microsoft Store.


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

Android Studio: не распознается как внутренняя или внешняя команда

Android Studio имеет собственную команду терминала для выполнения команд. И здесь встречается такая же ошибка при попытке запустить команду adb.

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

По умолчанию adb находится в следующей папке:
C: Users (имя пользователя) AppData Local Android Sdk platform-tools
Итак, все, что вам нужно сделать, это открыть Android Studio, щелкнуть File> Settings. В следующем окне в разделе «Инструменты» щелкните «Терминал». Затем введите полное местоположение в adb в начальном каталоге.


Перезапустите Android Studio, и ваша команда adb должна выполняться сейчас.


Кроме того, вы можете изменить каталог в самом терминале Android Studio. Просто введите следующую команду:
cd C: Users (имя пользователя) AppData Local Android Sdk platform-tools

Теперь вы должны иметь возможность запускать adb из команды терминала Android Studio.

CMD: Fastboot или ADB не распознается как внутренняя или внешняя команда

Наконец, если вы загрузили Fastboot и не можете выполнить команду adb из cmd, это означает, что вы должны указать путь к ADB в системных переменных (в переменных среды).

Откройте переменные среды Windows (как показано ранее), в разделе «Системные переменные» выберите «Путь» и нажмите «Изменить». Затем добавьте полный путь к папке с инструментами платформы (которая содержит adb.exe). Примените изменения.


Перезапустите командную строку, и вы сможете выполнить команду adb.


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