Pyuic5 не является внутренней или внешней командой исполняемой программой или пакетным файлом
C:\Users\HA\Documents\Python_Scripts\GUI_Scripts> pyuic5 -x hello.ui -o hello.py
Это дало мне следующую ошибку:
"C: /Program" не распознается как внутренняя или внешняя команда, операционная программа или командный файл.
Как я могу решить эту проблему? Моя цель - создать файл.py из файла.ui. Есть ли альтернатива, которую я могу попробовать?
Я пробовал следующее: я искал эту ошибку в Google и в stackoverflow ("C:\Program" не распознана ошибка), и предложение включить цитаты вокруг переменной пути не сработало для меня. Было еще одно предложение переустановить Visual C++ Redistributable для Visual Studio 2015 (не знаю, почему это поможет, но тем не менее я это пробовал), и это тоже не помогло.
Ниже приведена соответствующая информация о моих настройках. Anaconda3, pyuic5.bat и pyuic.py установлены в следующих каталогах (соответственно):
C:\Program Files
C:\Program Files\Anaconda3\Library\bin
C:\Program Files\Anaconda3\Lib\site-packages\PyQt5\uic
Переменная Path в System Variables включает следующие элементы, связанные с Anaconda3:
C:\Program Files\Anaconda3; C:\Program Files\Anaconda3\Scripts; C:\Program Files\Anaconda3\Library\bin
python.exe установлен в C:\Program Files\Anaconda3. Однако я могу выполнить следующие действия без каких-либо проблем:
Что еще я могу попробовать? Какую еще информацию я должен включить здесь, чтобы помочь с ответом?
Я удалил Anaconda3 и снова установил его, но во время переустановки я выбрал C:\Anaconda3 в качестве установочного каталога. После этого я смог запустить:
который успешно создал hello.py. Это наглядно показывает, что проблема заключается в пространстве в C:\Program Files. Однако почему раньше я мог запускать python.exe из командной строки Windows в любом каталоге, а пространство в C:\Program Files не было проблемой? Почему это затронуло только pyuic5? Надеюсь, кто-то может пролить свет на это для всех, кто может столкнуться с этой проблемой. Большинство пользователей, которые устанавливают Anaconda3, могут выбрать каталог установки по умолчанию, который находится в разделе Program Files, и они столкнутся с аналогичной проблемой. Тем не менее, для тех, кто просто не интересуется каталогом, я бы рекомендовал установить Anaconda3 в каком-то разумном каталоге, но убедиться, что в пути к этому каталогу нет места.
7 Answers 7
You need to first install pyqt5-tools
Via cmd writes Notice: python should be in windows environment variables :
Then you can use pyuic5
for any one has this problem: the key is that in anaconda3 pyuic5.bat is in:
also the Designer is here.
so in cmd you must first cd to:
go to this path in your anaconda installation
edit the pyuic5.bat add "" to the bath so it should be like this:
then use this code to convert your file:
but I did not install Anaconda, because the pyuic5 is supposed to be bundled with pyQt5, which I installed, so the question remains, once the venv is accessed from the CMD shell, why pyuic5 cannot be resolved by Windows?
i simply installed pyqt5 using pip install PyQt5 and pyuic5 command is not working. but i found pyuic.py in ". Python38\Lib\site-packages\PyQt5\uic" i runned it and it also give error from .driver import Driver ImportError: attempted relative import with no known parent package
- Create form by using Qtdesigner
- Save the file as filename.ui in Anaconda3\Library\ bin location
- Open command prompt
- Make the path as C:\Users\SGU\anaconda3\Library\bin>
- Then add the command to convert UI file to PY file as follows C:\Users\SGU\anaconda3\Library\bin>pyuic5 –x filename.ui -o filename.py
- Filename.py file created at location C:\Users\SGU\anaconda3\Library\bin>
- Then Run the code by using Pycharm by opening the filename.py file to get the filename.ui file (Desined Window) will arrive at the output screen.
You should install PyQt5 first. As I was trying pyuic4 and it showed an error. Then I saw that PyQt4 is not installed. So I tried pyuic5. You can Install PyQt5 with the 'pip install pyqt5' command.
For me, moving the pyuic5 application from the path in which it was before to the path my file was.
Like before pyuic5 application was in the path:
C:\Users\ASUS\AppData\Roaming\Python\Python39\Scripts
And then I moved it to the path:
C:\Users\ASUS\Desktop\Jarvis-everything\Github Jarvis\Jarvis2\Code
Where my file was, then it worked.
For you, it might be different but it is easy to find. Just open cmd , type pip install pyqt5 then enter.
You will see that it shows "Requirement already satisfied"(if you have already installed) on the same line you will find your path where it is installed.
There, find the pyuic5 application and move it to the path where the file you want to convert is present.
Причины ошибки «Не является внутренней или внешней командой» при выполнении команд в командной строке Windows 10 и Windows 11
Для того, чтобы понять суть ошибки, давайте рассмотрим, что происходит при выполнении команды в командной строке, в качестве примера будем использовать такой код:
- В случае, если «команда» является собственной встроенной командой консоли (в качестве примера — cls), она выполняется с заданными параметрами.
- Если «команда» — это какой-то файл .exe, .cmd, .bat или иной, например, pip, python или adb, выполняется попытка его запуска из расположения, где запущена командная строка (выделено на изображении ниже) или из расположений, добавленных в системную переменную PATH (о которой поговорим подробнее далее). При удачном запуске и правильно переданных параметрах команда выполняется.
Отсюда следуют наиболее распространённые причины появления ошибки при выполнении команды:
- Самая распространённая причина — отсутствие исполняемого файла в папке, где запущена командная строка и в папках, содержащихся в PATH.
- Ошибки при написании команды: при ошибке в имени файла, он не будет найден, что и приведёт к указанной ошибке.
- Файл отсутствует где-либо, например, вы пробуете использовать telnet, в то время, когда соответствующий компонент Windows не установлен.
- Редко — запускаемый через командную строку файл действительно не является исполняемой программой: изначально сам по себе или из-за повреждений.
Теперь о том, что делать в рассматриваемой ситуации.
Для исправления ошибки «Не является внутренней или внешней командой, исполняемой программой или пакетным файлом» в зависимости от ситуации можно использовать следующие подходы.
Переход к папке с исполняемым файлом в командной строке
Если выполнение команды требуется не на регулярной основе, достаточно перейти в командной строке в папку, содержащую нужный файл, делается это следующим образом:
- Например, мы знаем, что python.exe для последней версии Python на момент написания этой статьи располагается в папкеpip.exe — там же во вложенной папке Scripts (если окажется не ясным, как попасть в эту папку, процесс показан в видео ниже), adb.exe — где-то в папке с platform-tools и так далее. Скопируйте этот путь, сделать это можно из адресной строки проводника.
- Если командная строка запущена на том же диске, где находится нужный исполняемый файл, введите команду вида:
- Если командная строка запущена на диске C:, а исполняемый файл находится на другом диске, то перед 2-м шагом используйте команду вида (здесь D меняем на нужную букву диска) D: с последующим нажатием Enter.
- Введите нужную команду, которая ранее сообщала об ошибке — теперь она должна выполниться успешно.
Добавление папки с программой в системную переменную среды PATH
В случае, когда использование команд требуется регулярно, например, для git, разумным будет добавить папку с этим исполняемым файлом в PATH, чтобы затем в любой момент времени выполнять команды, независимо от того, в какой папке открыта командная строка:
Примечание: если ошибка возникает при использовании команд python, обратите внимание, что при первоначальной установке вам предложат добавить необходимые пути в PATH (отметка Add Python to PATH), то же самое часто бывает и при установке других программ:
Установка недостающих компонентов
Иногда проблема возникает из-за того, что нужный файл попросту отсутствует на компьютере:
- Вы пробуете использовать команды telnet, но не зашли в Панель управления —Программы и компоненты — Включение или отключение компонентов Windows и не включили «Клиент Telnet».
- Запускаете команды pyinstaller, но предварительно не установили его командой pip install pyinstaller
- Пробуете использовать команды adb.exe, но не установили необходимые компоненты Android SDK Platform Tools.
Аналогичная ситуация может быть и для многих других, не входящих в стандартную поставку Windows 10 и Windows 11 компонентов, например, java.
Если ошибка возникает при запуске системных инструментов Windows
Видео инструкция
Надеюсь, статья и видео помогли разобраться с проблемой и помогли в её решении. Остаются вопросы? — задавайте их в комментариях, я постараюсь ответить.
При попытке открыть какую-либо команду через окно служебной программы или консоль, вы сталкиваетесь с ошибкой – «Имя файла» не является внутренней или внешней командой, исполняемой программой или пакетным файлом. Система упрямо не открывает файл по каким-то причинам и этот факт очень раздражает. Причиной этого может быть один из нескольких вариантов: неправильно указан путь к файлу и отсутствие компонента в системе вообще, т.е по указанному адресу его не существует.
Основные причины, по которым появляется ошибка «не является внутренней или внешней командой»
Как уже было сказано, одна из причин заключается в неправильном указании пути к открываемому файлу. Обычно путь к файлу прописан в переменной «Path» в системе, должен быть указан строгий путь к директории, в котором размещены нужные файлы. Если имеются какие-то ошибки в настройках при указании пути в переменной, либо при указании имени файла, то система будет выдавать именно такую ошибку – «имя файла» не является внутренней или внешней командой, исполняемой программой.
Первым делом необходимо указать точный путь переменной «Path» операционной системе, чтобы не возникало ошибок при открытии файла. Для этого нужно наверняка знать расположение папки. К примеру, обратимся к программе, которая в дальнейшем будет работать с исполняемым файлом в определенной папке.
Переменная «Path» — это переменная операционной системы, которая служит для того, чтобы найти указанные исполняемые объекты через командную строку или терминал. Найти ее можно в панели управления Windows. В новых версиях Виндовс и других ОС указание вручную обычно не требуется.
Указываем правильный путь в переменной path на ОС Windows 7
Чтобы правильно указать путь необходимо знать точное расположение файла. Если файл программы, который нужно открыть лежит на диске в С:\Program Files\Java\jdk 1.8.0.45\bin, тогда этот путь нужно скопировать и указать в системной переменной для последующего открытия.
- Далее нам понадобиться рабочий стол, наводим мышь на «Мой компьютер» и в контекстном меню выбираем «Свойства».
- Нажимаем «Дополнительные параметры» слева и выбираем пункт «Переменные среды».
- В открывшемся окне ищем строку «Path» нажимаем на нее и вставляем скопированные путь сюда.
- Действие нужно подтвердить кнопкой «Ок». Компьютер желательно перезагрузить, чтобы настройки точно вступили в силу. Откройте консоль и вбейте нужную команду. Ошибки быть не должно.
В том случае, если ошибка будет появляться снова, попробуйте перенести программу в рабочие директории диска с установленной операционной системой, например /System32. С этой директорией Виндовс работает чаще.
Также ошибки возникают из-за отсутствия компонентов программы. Устранить их можно дополнив нужными. Для примера возьмем компонент «Telnet». Чтобы его включить, перейдите:
- На «Панель управления».
- Дальше выберите «Включение и выключение компонентов».
- Из списка выбираем «Клиент Telnet», напротив ставим галочку и нажимаем «Ок».
- Компонент должен работать и ошибок возникать больше не должно.
Суть и причины дисфункции (adb, javac, telnet, fastboot)
Путь к нужному файлу обычно прописан в переменной «PATH» настроек системы (там должен быть указан чёткий путь к директории, в котором размещены указанные файлы). Если нужные пути там не прописаны, то при вводе какой-либо из описанных команд система выдаёт ответ, что (имя файла) не является командой исполняемой программой.
Также причиной отсутствия поддержки таких команд (в частности, «telnet») является отсутствие данного компонента в системе (его необходимо установить самостоятельно).
Чтобы избавиться от ошибки необходимо указать системе путь (по-английски – «path») к директориям, где находятся нужные нам файлы.
Для этого необходимо точно знать, где находятся данные файлы (к примеру, «javac» может находиться по пути С:\Program Files\Java\jdk 1.8.0.45\bin (вместо «jdk 1.8.0.45» может быть «jdk» с другим числом). Необходимо скопировать указанный путь в буфер обмена (пометьте его курсором, а потом нажмите на сочетание клавиш Ctrl+C).
- Затем перейдите на рабочий стол ПК, наводите курсор на «Мой компьютер», нажмите на правую клавишу мыши, в появившемся меню выберите «Свойства».
- В открывшемся окне кликните на «Дополнительные параметры системы» слева, а затем на кнопку «Переменные среды».
- В «Системные переменные» ищете параметр «Path», и добавьте туда после точки с запятой скопированный вами ранее полный путь из директории Program Files\Java.
- Подтвердите изменения, нажав на «Ок», затем вновь откройте консоль, и наберите нужную команду (можете также перезагрузить систему для профилактики), ошибка может быть устранена.
Альтернативой может быть перенос не запускаемых файлов в известные системе директории (например, на общий корневой каталог ОС Виндовс, или в C:\Windows\System32), обычно система работает с ними вполне корректно.
Также, в случае некоторых компонентов (например, «telnet») проблема с ними возникает по причине их отсутствия в системе, потому их необходимо доустановить.
- В случае с «telnet» это делается переходом в «Панель управления» — «Программы и компоненты» — «Включение или выключение компонентов Windows».
- Находим там «Клиент Telnet» ставим слева от него галочку, и нажимаете на «Ок».
- Программа будет установлена и функционал «telnet» должен работать корректно.
Заключение
Ошибка «Не является внутренней или внешней командой (adb, javac, telnet, fastboot)» обычно возникает по причине отсутствия у системы информации о местонахождении данного файла (последняя обычно размещена в переменной «Path»), или отсутствия необходимого компонента в системе. Для исправления ошибки рекомендую прописать в параметре «Path» полный путь к папке, где находится файл, а также доустановить проблемные компоненты в систему (если изначально отсутствуют таковые). Это позволит стабилизировать работу системы, и пофиксить ошибку на вашем ПК.
Читайте также: