En Linux puede usar update-alternative
para cambiar la versión de un comando.
¿Qué comando en OS X (10.8) cambiará la alternativa del comando actual?
En Linux puede usar update-alternative
para cambiar la versión de un comando.
¿Qué comando en OS X (10.8) cambiará la alternativa del comando actual?
Entiendo la motivación detrás de tu pregunta. update-alternatives
soluciona con elegancia el problema de administrar varias versiones instaladas de un programa (por ejemplo, Java) o diferentes puertos de un programa ( vim
vs. elvis
vs. vile
) al hacer que uno de ellos sea el predeterminado.
update-alternatives
, que se encuentra en muchas distribuciones de Linux, crea y administra un conjunto de enlaces simbólicos desde /bin
, /usr/bin
(y similares) hasta /etc/alternatives
, y desde allí hasta la ubicación donde está instalado el programa.
Por ejemplo, en openSUSE java
tiene un enlace simbólico a /etc/alternatives/java
, que tiene un enlace simbólico a una ruta "privada" donde java
reside:
/usr/bin/java -> /etc/alternatives/java
/etc/alternatives/java -> /usr/lib64/jvm/java-1.5.0-sun-1.5.0/jre/bin/java
Lamentablemente, y aunque algunos piensan que sería necesario, al menos para MacPorts, no hay tal cosa en OS X . Personalmente resolví la falta de update-alternatives
con alias en mi .bashrc
:
alias ls='/usr/local/bin/ls'
o simplemente cambiando $PATH
:
PATH=/usr/local/bin:$PATH
Si no puede resolverlo así y está sopesando el hecho de trasladarlo a OS X, tenga en cuenta que aunque la primera encarnación de update-alternatives
fue un script de Perl, fue rewritten en C para Debian, y algunas otras distribuciones lo adoptaron más tarde (por ejemplo, openSUSE 12.1).
openSUSE 11.4 proporciona la versión de Perl como paquete RPM . Si está buscando la versión C, vaya para cualquier versión reciente de Ubuntu o Debian, o openSUSE 12.1 o posterior.
Macports admite esta capacidad a través de 'selección de puerto' para muchos paquetes de idiomas, mysql y otros. (Estoy usando la versión MacPorts 2.4.2.)
Lea otras preguntas en las etiquetas command-line configuration