- ベストアンサー
centos7 環境変数 Laravel
[vagrant@localhost ~]$ echo export PATH=$HOME/.composer/vendor/bin:$PATH >> ,bash_profile [vagrant@localhost ~]$ source ~/.bash_profile [vagrant@localhost ~]$ laravel -bash: laravel: command not found としてもコマンドが認識されません。なぜでしょうか?
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
お礼に書かれているecho $PATHの出力を見ると先頭が/home/vagrant/.composer/vendor/binではなくて/home/vagrant/.composer/vendor/laravelとなっています。質問文に書かれていた設定と違いますね。 また、回答No.1に書いたls $HOME/.composer/vendor/bin/は試さなかったのでしょうか。
その他の回答 (1)
- _kappe_
- ベストアンサー率68% (1581/2304)
1行目、">>"の右側のファイル名が間違っています。コンマをピリオドに変えてやり直しましょう。 次に、cat ~/.bash_profileを実行して、ファイルの最後の行に"PATH=…"が書き加えられているかどうかを確認してください。 それが問題なければ、source ~/.bash_profileを実行した後にecho $PATHを実行してください。PATHの先頭に$HOME/.composer/vendor/binは追加されていますか。 そこまで確認しても"-bash: laravel: command not found"が出る場合は、そもそもlaravelというコマンドがないのかもしれません。ls $HOME/.composer/vendor/bin/を実行して確認してください。大文字・小文字も区別されることに注意。
お礼
お礼が遅くなりすみません。ご回答ありがとうございます。パスは通っていると思いますが、ディレクトリだから実行できないんだと思いますが、whereisを見るとあってるんじゃないかと思いますが、なんでwhereisで出たパスが通っているのに実行できないのか理解できません。なにかヒントがあればご教授いただければ幸いです。 [vagrant@localhost laravel]$ echo $PATH /home/vagrant/.composer/vendor/laravel:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/vagrant/.local/bin:/home/vagrant/bin:/home/vagrant/.local/bin:/home/vagrant/bin [vagrant@localhost laravel]$ source .bash_profile [vagrant@localhost laravel]$ laravel -bash: laravel: command not found [vagrant@localhost laravel]$ whereis laravel laravel: /home/vagrant/.composer/vendor/laravel/laravel /home/vagrant/.composer/vendor/laravel [vagrant@localhost vendor]$ ls -l total 8 -rw-rw-r--. 1 vagrant vagrant 178 Jan 30 22:04 autoload.php drwxrwxr-x. 2 vagrant vagrant 91 Jan 30 22:04 bin drwxrwxr-x. 2 vagrant vagrant 229 Jan 30 22:04 composer drwxrwxr-x. 3 vagrant vagrant 30 Jan 30 22:03 dnoegel drwxrwxr-x. 4 vagrant vagrant 36 Jan 30 22:04 doctrine drwxrwxr-x. 3 vagrant vagrant 29 Jan 30 22:04 dragonmantank drwxrwxr-x. 3 vagrant vagrant 29 Jan 30 22:04 egulias drwxrwxr-x. 3 vagrant vagrant 19 Jan 30 22:04 fideloper drwxrwxr-x. 4 vagrant vagrant 62 Jan 30 22:03 jakub-onderka drwxrwxr-x. 5 vagrant vagrant 73 Feb 1 18:32 laravel drwxrwxr-x. 5 vagrant vagrant 69 Jan 30 22:04 league drwxrwxr-x. 3 vagrant vagrant 21 Jan 30 22:04 monolog drwxrwxr-x. 3 vagrant vagrant 20 Jan 30 22:04 nesbot drwxrwxr-x. 3 vagrant vagrant 24 Jan 30 22:03 nikic drwxrwxr-x. 3 vagrant vagrant 21 Jan 30 22:04 opis drwxrwxr-x. 3 vagrant vagrant 27 Jan 30 22:04 paragonie drwxrwxr-x. 3 vagrant vagrant 23 Jan 30 22:03 phpoption drwxrwxr-x. 5 vagrant vagrant 54 Jan 30 22:04 psr drwxrwxr-x. 3 vagrant vagrant 19 Jan 30 22:03 psy drwxrwxr-x. 3 vagrant vagrant 18 Jan 30 22:04 ramsey drwxrwxr-x. 3 vagrant vagrant 25 Jan 30 22:04 swiftmailer drwxrwxr-x. 24 vagrant vagrant 4096 Jan 30 22:04 symfony drwxrwxr-x. 3 vagrant vagrant 34 Jan 30 22:03 tijsverkoyen drwxrwxr-x. 3 vagrant vagrant 23 Jan 30 22:03 vlucas [vagrant@localhost vendor]$ ./laravel -bash: ./laravel: Is a directory
お礼
ご回答ありがとうございます。 .composer/vendor/laravel(/) .composer/vendor/bin(/) をすべて試しましたが駄目でした。どういった原因が考えられるでしょうか? [vagrant@localhost ~]$ vi .bashrc [vagrant@localhost ~]$ source .bashrc [vagrant@localhost ~]$ laravel -bash: laravel: command not found [vagrant@localhost ~]$ echo $PATH /home/vagrant/.composer/vendor/laravel:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/vagrant/.local/bin:/home/vagrant/bin:/home/vagrant/.composer/vendor/bin:/home/vagrant/.local/bin:/home/vagrant/bin:/home/vagrant/.composer/vendor/bin:/home/vagrant/.composer/vendor ////////////////////////////// [vagrant@localhost ~]$ vi .bashrc [vagrant@localhost ~]$ source .bashrc [vagrant@localhost ~]$ laravel -bash: laravel: command not found [vagrant@localhost ~]$ echo $PATH /home/vagrant/.composer/vendor/laravel/:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/vagrant/.local/bin:/home/vagrant/bin:/home/vagrant/.composer/vendor/bin:/home/vagrant/.local/bin:/home/vagrant/bin:/home/vagrant/.composer/vendor/bin:/home/vagrant/.composer/vendor ////////////////////////////// [vagrant@localhost ~]$ vi .bashrc [vagrant@localhost ~]$ source .bashrc [vagrant@localhost ~]$ laravel -bash: laravel: command not found [vagrant@localhost ~]$ echo $PATH /home/vagrant/.composer/vendor/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/vagrant/.local/bin:/home/vagrant/bin:/home/vagrant/.composer/vendor/bin:/home/vagrant/.local/bin:/home/vagrant/bin:/home/vagrant/.composer/vendor/bin:/home/vagrant/.composer/vendor ////////////////////////////// [vagrant@localhost ~]$ vi .bashrc [vagrant@localhost ~]$ source .bashrc [vagrant@localhost ~]$ laravel -bash: laravel: command not found [vagrant@localhost ~]$ echo $PATH /home/vagrant/.composer/vendor/bin/:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/vagrant/.local/bin:/home/vagrant/bin:/home/vagrant/.composer/vendor/bin:/home/vagrant/.local/bin:/home/vagrant/bin:/home/vagrant/.composer/vendor/bin:/home/vagrant/.composer/vendor
補足
またコマンドとして実行できるファイルはコマンド名が緑色で表示されるようですが(artisanはエラーが出ますが、一応実行できるので、、)、vendor/bin以下にもvendor/laravel,vendor/laravel/laravel以下にもlaravelという文字が緑で表示されているものはないのですが、そもそもインストールの時点でなにかおかしなことをやったのでしょうか? [vagrant@localhost laravel]$ ls app bootstrap config package.json public resources server.php tests artisan composer.json database phpunit.xml README.md routes storage webpack.mix.js [vagrant@localhost laravel]$ ./artisan PHP Warning: require(/home/vagrant/.composer/vendor/laravel/laravel/vendor/autoload.php): failed to open stream: No such file or directory in /home/vagrant/.composer/vendor/laravel/laravel/artisan on line 18 PHP Fatal error: require(): Failed opening required '/home/vagrant/.composer/vendor/laravel/laravel/vendor/autoload.php' (include_path='.:/usr/share/pear:/usr/share/php') in /home/vagrant/.composer/vendor/laravel/laravel/artisan on line 18