zsh: команда не найдена

Я новичок в администрировании Linux с помощью bash... Я следил за руководством по установке laravel 5.2 из здесь... успешно установил...

сначала я установил композитор и выполнил следующую команду

composer global require "laravel/installer"

после этого поместите это на мой путь тоже в ~/.zshrc вот так

export PATH="~/.composer/vendor/bin:$PATH"

Когда я запускаю команду laravel из терминала, я получаю следующую ошибку

➜  ~ laravel 
zsh: command not found: laravel

Если я echo $PATH, это показывает, что он добавлен в путь

Примечание. Я установил oh my zsh на свой терминал...

Что мне нужно сделать, чтобы заставить его работать, пожалуйста, помогите


person Amjad    schedule 08.04.2016    source источник
comment
просто сделай composer create-project laravel/laravel ProjectName --prefer-dist   -  person devnull    schedule 09.04.2016
comment
Есть ли что-то под названием laravel в ~/.composer/vendor/bin?   -  person miken32    schedule 09.04.2016
comment
@ miken32 да, есть файл с именем laravel в ~/.composer/vendor/bin, который я проверял, когда пытался запустить команду   -  person Amjad    schedule 09.04.2016
comment
Затем попробуйте запустить его напрямую: ~/.composer/vendor/bin/laravel и посмотрите, работает ли это. Если нет, убедитесь, что он исполняемый.   -  person miken32    schedule 09.04.2016


Ответы (13)


Я думаю, ZSH не будет расширять ~ на PATH. Попробуйте это вместо этого:

export PATH="$HOME/.composer/vendor/bin:$PATH"
person Chris    schedule 08.04.2016
comment
@ Амджад Нет проблем. Рад, что смог помочь. - person Chris; 09.04.2016
comment
Работает только до тех пор, пока я не закрою терминал. Любые идеи? - person Peter G Mac.; 03.05.2016
comment
@ПитерГМак. Что ты имеешь в виду? Мы говорим о файле .zshrc, который выполняется каждый раз, когда вы запускаете новую сессию zsh (то есть каждый раз, когда вы открываете терминал). Он работает только до тех пор, пока вы не закроете свой терминал в том смысле, что он работает с момента открытия вашего терминала до закрытия вашего терминала? - person Chris; 03.05.2016
comment
почему я должен добавлять это каждый раз, когда я открываю терминал? - person Hossam Maher; 01.06.2017
comment
Это также решило мою проблему с миграциями, которые не работали с SQLSTATE[HY000] [2002] No such file or directory при использовании homestead вместе с сокетом mamp pro (после настройки unix_socket, правильного локального хоста и всего остального, также успешно протестированного соединения, все еще не смог запустить миграции), так что СПАСИБО! - person Luca Reghellin; 06.10.2018
comment
В моем случае мне пришлось использовать другой путь: export PATH="$HOME/.config/composer/vendor/bin:$PATH" - person М.Б.; 24.02.2019
comment
Спасибо, я счастлив :) - person josterricardo; 07.06.2019
comment
У меня тоже работает только export PATH="$HOME/.config/composer/vendor/bin:$PATH". у меня убунту 19.04 - person Gayan; 14.08.2019
comment
@ПитерГМак. Вы можете добавить этот код в ~/.zshrc, перезапустить терминал, и он заработает (я использую Iterm2 с Zsh на Mac) - person Van Tho; 05.12.2019
comment
работает на меня. танки. - person hakiko; 26.12.2020

Попробуйте сделать это:

export PATH="$HOME/.config/composer/vendor/bin:$PATH"

person Esteban    schedule 15.02.2017
comment
это исправило это для меня - person lewis4u; 07.05.2017
comment
Это как раз в моей ситуации. Спасибо - person Vuong Tran; 22.12.2020

В продолжение ответа Криса

Команда export PATH="$HOME/.composer/vendor/bin:$PATH" работает, но только для текущего сеанса терминала.

Если вы хотите, чтобы путь всегда был доступен при запуске zsh, добавьте PATH="$HOME/.composer/vendor/bin:$PATH" в конец файла ~/.zshrc. Запустите команду zsh или перезапустите терминал, и laravel будет доступно в каждом сеансе, который вы запускаете.

person jjasspper    schedule 21.02.2018
comment
Вам нужно запустить: source ~/.zshrc чтобы сделать его доступным и в текущем сеансе (без перезапуска терминала). - person chubbyk; 15.05.2019

У меня такая же проблема на macOS Sierra. Отредактируйте файл .zshrc с помощью

PATH=~/.composer/vendor/bin:$PATH

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

person theRana    schedule 29.09.2017
comment
Спасибо! это сработало для меня. - person Zion Adams; 04.06.2021

В моем случае я добавил следующую строку в конечный файл «.zshrc»:

export PATH="$HOME/.composer/vendor/bin:$PATH"
person Mexidense    schedule 06.02.2019

Мое решение было:

echo "PATH=\"$HOME/.config/composer/vendor/bin:$PATH\"" >> ~/.zshrc
source ~/.zshrc
  • Затем введите laravel

Подробнее здесь ????

person V1NNY    schedule 14.09.2020

Я использую ZSH, и это работает для меня:

export PATH="$HOME/.composer/vendor/bin:$PATH"

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

person JanuriDP    schedule 03.09.2020

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

Попробуйте запустить эту команду на терминале папки вашего проекта:

composer global require laravel/installer

Мне помогла статья из laracasts: https://laracasts.com/discuss/channels/laravel/laravel-command-not-found-by-zsh-on-macos

person Gopal Bogati    schedule 22.04.2021

В Ubuntu 20.04 с zsh (О, мой ZSH!)

добавить Laravel cli с композитором: composer global require laravel/installer

редактировать ~/.zshrc

добавлять

export PATH="$HOME/.config/composer/vendor/bin:$PATH"

бежать:

source ~/.zshrc
person Jatniel    schedule 28.07.2021

cd в каталог проекта и запустите composer create-project --prefer-dist laravel/laravel blog

person White Rabbit    schedule 05.08.2020

Попробуйте сделать это:

макОС:

$HOME/.composer/vendor/bin

Окна:

%USERPROFILE%\AppData\Roaming\Composer\vendor\bin

Дистрибутивы GNU/Linux:

$HOME/.config/composer/vendor/bin or $HOME/.composer/vendor/bin
person Mostafa Norzade    schedule 11.12.2020


For Linux:
make sure you fully add the path to composer to your system path
export PATH="$HOME/.config/composer/vendo/bin:$PATH"

или еще лучше отредактируйте файл .zshrc, как показано ниже

echo "PATH=\"$HOME/.config/composer/vendor/bin:$PATH\"" >> ~/.zshrc
source ~/.zshrc
person nfon andrew    schedule 21.06.2021

Когда вы запускаете команду laravel в своем терминале, вы вызываете файл laravel внутри каталога composer/vendor/bin.

Если ничего из вышеперечисленного не работает, найдите каталог вашего поставщика, выполнив:

composer global about

вы увидите что-то вроде: Изменен текущий каталог на /home/username/.config/composer.

Это означает, что ваш каталог поставщика находится по этому пути. Затем добавьте псевдоним в файл .zshrc:

alias laravel="$HOME/.config/composer/vendor/bin/laravel".

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

или вы можете добавить композитора к вашему пути: export PATH="$HOME/.config/composer/vendor/bin:$PATH", что является рекомендуемым способом.

person Mario Nezmah    schedule 05.04.2020