Respuesta central: probablemente quieras /usr/local/bin
. Dependiendo de qué tan reciente sea su macOS, es posible que deba actualizar su valor predeterminado $PATH
. Ver abajo para más detalles.
ACTUALIZACIÓN 12-01-2018 En algún momento desde que escribí mi respuesta original, Apple cambió su valor predeterminado $PATH
. Como resultado, mucho de lo que digo a continuación es irrelevante para las Macs recientes. Si escribe echo $PATH
un terminal, y /usr/local/bin
es el primero, puede ignorar todo lo que se indica a continuación sobre cómo cambiar su $PATH
.
Respuesta original
Las Mac son inusuales a este respecto. La $PATH
variable predeterminada para un usuario normal se ve así:
/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin
Al poner /usr/local/bin
después /usr/bin
y /bin
, Mac cambia el sistema habitual. Normalmente, puede poner algo en /usr/local/bin
(digamos un segundo intérprete de Perl, compilado de una manera no estándar), y luego un usuario normal golpeará primero al personalizado en lugar del de todo el sistema. Esto es bueno. Los usuarios pueden obtener variantes, pero el sistema se mantiene puro. $PATH
Sin embargo, dado el valor predeterminado de Apple , los elementos que se encuentran /usr/bin
o /bin
se encontrarán antes que nada /usr/local/bin
. (Esto básicamente anula el propósito de instalar, por ejemplo, el Perl personalizado en /usr/local/bin
).
Para solucionar esto, puede cambiar el usuario normal $PATH
editando el .profile
archivo en el directorio de inicio del usuario. (Ese archivo puede no existir, si tiene una instalación completamente nueva. En ese caso, créelo).
Semi-relacionado: Homebrew proporciona una excelente gestión de paquetes para Mac. De manera predeterminada, Homebrew instala el software /usr/local
, pero lo hace de una manera que hace que sea muy fácil eliminar cosas y volver a un estado normal más adelante.
/usr/local/bin
y/usr/local/sbin
vale la pena agregar a su ruta, ya que muchos archivos MAKE para las compilaciones de origen se instalan por defecto.Si utiliza MacPorts , vale la pena añadir
/opt/local/bin
y/opt/local/sbin
así.La mejor manera de hacer esto es agregar
export PATH=/usr/local/bin:/usr/local/sbin:/opt/local/bin:/opt/local/sbin:$PATH
al
.bashrc
archivo en su directorio de inicio (que está oculto, por lo que la CLI es la mejor manera de hacerlo) o, si desea cambiar la ruta de acceso del sistema, agregue la misma línea/etc/bashrc
(no oculta), pero lo hará Necesitosudo
hacer esto.Si no tiene un
.bashrc
en el hogar de ningún usuario, puede hacer uno y agregarle esta línea, pero recuerde cambiar los permisos en el archivo que cree para que el usuario en cuestión lo pueda leer (obviamente no es relevante si usted ' lo estás haciendo para tu propio perfil).Al
$PATH
final se agrega la ruta predeterminada del sistema a lo que haya puesto antes. Tenga en cuenta que el sistema busca archivos binarios en el orden de las rutas dadas, por lo que si instala un archivo binario/usr/local
o/opt/local
que también está instalado de forma predeterminada en el sistema, las versiones que instale se encontrarán primero, lo que puede (aunque rara vez) alterar las cosas. Vale la pena tener cuidado.Buena información está aquí .
Debo señalar que lo anterior supone que está utilizando Bash para el shell, que es el predeterminado en Mac OS X v10.4 (Tiger) y Mac OS X v10.5 (Leopard), pero no en sistemas anteriores, que en su
tcsh
lugar utilizaron que tiene una sintaxis diferente.Espero que eso ayude...
fuente
/usr/local/bin
ya está en un OS X predeterminado$PATH
(aunque es demasiado tarde, vea mi respuesta). Si usa MacPorts, su instalador debería editar su ruta según sea necesario, al menos siempre lo ha hecho en mi experiencia. Dicho esto, es bueno que los usuarios sepan qué está haciendo (y por qué).open
comando con el nombre del archivo como argumento y debería abrirse con lo que esté configurado como el editor de texto predeterminado (TextEdit como estándar).Que tienden a ir con
/usr/local
. Aquí hay una buena explicación de por qué , que se refiere al Estándar de Jerarquía del Sistema de Archivos (FHS) ., que en a su vez dice acerca de/usr/local
:fuente