Acabo de instalar el compositor en mi /usr/bin
carpeta, por lo que cuando ejecuto desde esa carpeta php composer.phar
, obtengo la información de ayuda sobre el compositor. Pero, cuando intento ejecutar lo mismo desde otra carpeta, obtengo Could not open input file: composer.phar
.
¿Cómo llamar php composer.phar
desde todas partes sin problemas?
php
composer-php
ziiweb
fuente
fuente
composer install
.php composer.phar
, probablemente esté en su directorio actual.sudo mv composer.phar /usr/local/bin/
entoncesalias composer='/usr/local/bin/composer.phar'
.sudo mv composer.phar /usr/local/bin/composer
. Después de eso, puedo usarlo encomposer install
cualquier lugar.Puede hacer una instalación global ( guía archivada ):
Actualización : a veces no puede o no quiere descargar en
/usr/local/bin
(algunos han experimentado problemas de permisos de usuario o acceso restringido), en este caso puede probar estocurl -sS http://getcomposer.org/installer | php -- --filename=composer
chmod a+x composer
sudo mv composer /usr/local/bin/composer
Actualización 2 : para Windows 10 y PHP 7 recomiendo este tutorial . Personalmente instalé Visual C ++ Redistributable para Visual Studio 2017 x64 antes de PHP 7.3 VC15 x64 versión Non Thread Safe (verifique qué versiones de ambos en la página PHP para Windows , menú lateral). Lea atentamente y tal vez la sección de habilitar extensiones podría diferir (en
extension=curl
lugar deextension=php_curl.dll
). Funciona como un amuleto, ¡buena suerte!fuente
composer
buena nota aquí.curl -sS https://getcomposer.org/installer | php -- --filename=composer
Cómo ejecutar Composer desde cualquier lugar (en MacOS X) a través de Terminal
Antecedentes:
En realidad, en el sitio web de getComposer se indica claramente que, instale Composer utilizando el siguiente comando curl
curl -sS https://getcomposer.org/installer |php
Y ciertamente hace lo que está destinado a hacer. Y luego dice que mueva composer.phar al directorio / usr / local / bin / composer y luego composer estará disponible globalmente, ¡usando la siguiente línea de comando en la terminal!
Pregunta:
Entonces, el problema que me lleva a Google es cuando ejecuté la línea anterior en Mac OS X Terminal, decía eso, Permiso denegado. Como sigue:
Responder:
El siguiente enlace me llevó a la solución como un encanto y estoy agradecido por eso. Lo que acabo de perder fue el comando sudo antes de la línea de comando "Mover" indicada anteriormente. Ahora mi comando Mover es el siguiente:
Le solicita directamente que se autentique y vea si está autorizado. Entonces, si ingresa una contraseña válida, entonces se realizará el movimiento, y puede verificar si composer está instalado globalmente, usando la siguiente línea.
Espero que esta respuesta te haya ayudado a ampliar tu visión y finalmente resolver tu problema.
¡Salud!
fuente
/usr/local/bin/composer
no es un directorio; es el nuevo nombre del archivo que se llamaríacomposer.phar
antes.Primero instale el compositor como se menciona en la documentación de instalación del compositor . Acabo de agregar aquí como referencia.
curl -sS https://getcomposer.org/installer | php
y luego mueva el archivo a '/ usr / local / bin'.
sudo mv composer.phar /usr/local/bin/composer
Intenta correr
composer -V
. Si obtiene una salida comoComposer version
seguido del número de versión, entonces el compositor se instaló correctamente.Si obtiene algún resultado como
composer: command not found
, use el siguiente comando para crear un alias para el compositor. Entonces se ejecutará globalmente.alias composer='/usr/local/bin/composer'
Ahora, si ejecuta
composer -V
significa que obtendrá el resultadoComposer Version
seguido del número de versión.Espero que esto ayude a alguien.
fuente
Simplemente ejecute este comando para instalar composer globalmente
curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer
fuente
Simplemente muévalo a la
/usr/local/bin
carpeta y elimine la extensiónfuente
Para MAC y LINUX utilice el siguiente procedimiento:
Agregue el directorio donde se encuentra composer.phar a su RUTA:
export PATH=$PATH:/yourdirectory
y luego cambie el nombre de composer.phar a composer:
fuente
Para ejecutarlo desde otra ubicación, puede usar el programa composer que viene con el programa. Básicamente es un script bash. Si no lo tiene, puede crear uno simplemente copiando el siguiente código en un archivo de texto
#!/bin/sh dir=$(d=$(dirname "$0"); cd "$d" && pwd) if command -v 'cygpath' >/dev/null 2>&1; then dir=$(cygpath -m $dir); fi dir=$(echo $dir | sed 's/ /\ /g') php "${dir}/composer.phar" $*
Luego guarde el archivo dentro de su carpeta bin y asígnele el nombre compositor sin ninguna extensión de archivo. Luego agregue la carpeta bin a su variable de entorno f
fuente
Puede hacer una instalación global simple para ejecutarlo desde cualquier lugar
curl -sS https://getcomposer.org/installer | php mv composer.phar /usr/local/bin/composer
El sitio web https://getcomposer.org/doc/00-intro.md#globally recomienda esta forma. Funcionó bien en Ubuntu 14.04 sin problema. De esta manera no necesita hacer un ejemplo
php compomser.phar show
, simplemente lo hacecomposer show
, en cualquier directorio con el que esté trabajando.fuente
Algo de esto puede deberse al sistema operativo que está ejecutando su servidor. Recientemente hice una migración a un nuevo entorno de alojamiento con Ubuntu. Agregar este alias
alias composer="/path/to/your/composer"
a .bashrc o .bash_aliases no funcionó al principio por dos razones:El servidor estaba ejecutando csh, no bash, de forma predeterminada. Para comprobar si esto es un problema en su caso, ejecute
echo $0
. Si lo que se devuelve es-csh
, querrá cambiarlo a bash, ya que algunos procesos ejecutados por Composer fallarán al usar csh / tcsh .Para cambiarlo, primero verifique si bash está disponible en su servidor ejecutando
cat /etc/shells
. Si, en la lista devuelta, vebin/bash
, puede cambiar el valor predeterminado a bash ejecutandochsh -s /bin/csh
.Ahora, en este punto, debería poder ejecutar Composer, pero normalmente, en Ubuntu, tendrá que cargar el script en cada sesión obteniendo sus scripts Bash ejecutando
source ~/.bashrc
osource ~/.bash_profile
. Esto se debe a que, en la mayoría de los casos, Ubuntu no cargará su script Bash, ya que se carga.profile
como el script predeterminado.Para cargar sus scripts Bash cuando abre una sesión, intente agregar esto a su .profile (esto es si su script Bash es .bashrc; modifíquelo en consecuencia si .bash_profile u otro):
if [ -n "$BASH_VERSION" ]; then # include .bashrc if it exists if [ -f "$HOME/.bashrc" ]; then . "$HOME/.bashrc" fi fi
Para probar, cierre su sesión y vuelva a cargar. Si funciona correctamente, se está ejecutando
composer -v
owhich composer
debería comportarse como se esperaba.fuente