/ usr / bin / env:php:そのようなファイルやディレクトリはありません
アプリのデプロイに.shスクリプトを使用したい。このスクリプトは私のホームサーバー(Ubuntu 15.10サーバー)にあり、実行可能としてマークされています。このスクリプトへのアクセスはsshを介して行われ、このチュートリアルを使用して、そのスクリプトを実行するsshログインを設定しました。したがって、基本的には呼び出すだけでssh deployer@XXX.com someArguments、スクリプトをsomeArgumentsパラメーターとして実行します。ユーザーdeployerはuid = 0を持っているので、基本的にはroot(これは将来変更される予定です。正常に機能するまで、アクセス許可の問題を解消するためだけに設定しました)。 そして、ここが物事がトリッキーになるところです。スクリプトは/usr/bin/env: php: No such file or directoryatコマンドを報告します/bin/composer install(Composerを使用)。私がそのスクリプトを見るほど、物事は奇妙です。この行の前に、/bin/composer self-updateおよびも呼び出さ/bin/composer -Vれています。どちらも正しく実行され、正しい出力を表示します。 次のことを確認しました。 /usr/bin/env php -v正しいPHPバージョンを表示します(と同じ/usr/bin/php -v) whereis php ディスプレイ php: /usr/bin/php /usr/local/bin/php /usr/share/man/man1/php.1.gz php5-cli パッケージがインストールされ、最新バージョン $PATH 含む /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games which env ディスプレイ /usr/bin/env 私は次のことも試しました: bash deploy.shrootの下で直接スクリプトを実行する(そのユーザーと同じであるため)-エラーなしで完全に動作します 失敗したコマンドを直接実行する-エラーなしで完全に実行する したがって、これは非常に特殊なケースとして私には思われますが、このコマンドが機能しないのはなぜですか。デバッグに12時間費やしましたが、ここでは考えきれません。 PS:同様のエラー(/usr/bin/env: node: No such file or directory)が存在する場合bower install(Bowerを使用)に発生しますが、実行中(NPMを使用)には発生しません。npm …