Git Bash не видит моего пути



когда я использую Git Bash (на Windows), я не могу запустить любой исполняемый файл без указания его полного пути, хотя он находится в папке, которая находится в моей переменной PATH. Похоже, Баш его не узнает. Зачем? Я могу это исправить?

922   16  

16 ответов:

получил его. Как пользователь Windows я привык вводить имена исполняемых файлов без расширений. В моем случае, я хотел выполнить файл с именем cup.bat. В оболочке Windows введите cup будет достаточно. Bash не работает таким образом, он хочет полное имя. Набрав cup.bat решена проблема. (Я не смог запустить файл, хотя, по-видимому, bash не мог понять его содержимое)

еще одна причина переключиться на posh-git..

спасибо @Tom за то, что указал мне направо направление.

возможно, bash не видит ваш путь к Windows. Типа env|grep PATH в bash, чтобы подтвердить, что путь это видит.

после комментария @Daniel и благодаря ответу @Tom я узнал, что Git bash действительно использовал путь, но не последние пути, которые я недавно установил. Чтобы обойти эту проблему, я добавил файл в свой домашний каталог (windows) с именем:

.bashrc

и содержание следующим образом:

PATH=$PATH:/c/Go/bin

потому что я устанавливал Go и этот путь содержал исполняемый файл go.exe Теперь Git bash смог распознать команда:

go

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

во время установки Git, вы можете выбрать опцию, показанную ниже, это поможет вам установить путь автоматически.

Git installation wizard

Это сработало для меня :)

создать файл в C:\Users\USERNAME который называется config.bashrc следующее, содержащих:

PATH=$PATH:/c/Program\ Files\ \(x86\)/Application\ with\ space

теперь переместите файл в командной строке, в нужном месте:

mv config.bashrc .bashrc

перезагрузите компьютер после добавления нового значения в PATH.

старый вопрос, но это может помочь кому-то еще.

Я изменил свой путь пользователя широко, после этого я просто выйти из системы и войти снова.

вот оно! git bash правильно загрузил новое значение пути.

похоже, что основной причиной здесь является Git Bash, который не всегда может правильно анализировать переменную %USERPROFILE%. Вместо того, чтобы сделать его относительно C:\Users\\ он получает значение C:\Windows\System 32\systemprofile\ После изменения этого на полностью квалифицированный адрес он работает, и даже если я верну его позже, Git Bash по-прежнему имеет правильный путь по какой-то причине.

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

для меня самым удобным было: 1) создать каталог "bin" в корне диска C: 2) Добавить "C:/bin;" путь в "Мой Компьютер - > Свойства - > Переменные среды"

Я встречаю эту проблему, когда пытаюсь использовать mingw для компиляции XGBoost lib в Win10. Наконец я нашел решение.

создайте файл с именем а .bashrc в вашем домашнем каталоге (обычно C:\Users\username). Затем добавьте к нему путь. Не забудьте использовать кавычки, если ваш путь содержит пробел, и не забудьте использовать /c / вместо C:/

например:

путь=$path: в"программы/ц/файлы/компилятор MinGW-w64/x86_64 с-7.2.0-в POSIX-сех-rt_v5-ред. 1/mingw64/ОГРН"

для тех из вас, кто пробовал все вышеперечисленные методы, включая Windows system env. переменные параметры. ,bashrc, .bashprofile и т. д. И может видеть правильный путь в 'echo $PATH' ... У меня есть решение для вас.

подавление ошибок с помощью exec 2> /dev / null

мой скрипт работает нормально, но бросал ошибки "команда не найдена" или "нет найденного каталога", хотя, насколько я могу судить, пути были заподлицо. Итак, если вы подавите эти ошибки (возможно, придется также добавить "set +e"), чем он работает правильно.

Я столкнулся с глупой ошибкой с моей стороны. У меня был системный широкий и пользовательский переменный путь, установленный для моего рабочего пространства golang на моей машине windows 10. Когда я удалил резервный системный переменный путь и вышел из системы и снова включился, я смог позвонить .exe-файлы в bash и call go env с успехом.

хотя OP был дан ответ, это еще одна проблема, которая может помешать bash видеть ваши пути. Я только что протестировал bash снова с этой проблемой, и это, похоже, дает какой-то конфликт, который блокирует bash от следования по любому из путей.

не экранируйте (\) специальные символы при редактировании/добавлении в переменную $PATH. Например, каталог приложения в program files будет выглядеть так: PATH=$PATH:/c/Program Files (x86)/random/application

Не делай этого:
PATH=$PATH:/c/Program\ Files\ \(x86\)/random/application/

надеюсь, что это помогает.

В Переменных Среды Пути Windows 7 Я просто добавляю в конце системной переменной path

\; C:\Program файлы\Git\bin

и это работает сейчас!

создайте пользовательскую переменную с именем Path и добавьте в качестве значения %Path%, из того, что я заметил, Git Bash видит только пользовательские переменные, а не системные переменные. Выполнив указанную процедуру, вы откроете свою системную переменную в пользовательских переменных.

Comments

    Ничего не найдено.