Eliminando las utilidades integradas de línea de comandos de PATH, zsh

3

Bueno, entonces soy un usuario avanzado de Linux, es decir, me siento más como en casa cuando tengo acceso a la línea de comandos, y estoy muy acostumbrado a usar GNU coreutils, así que ahora que he instalado Coreuils de GNU en Mac OS X con Homebrew, ¿cómo puedo eliminar los coreutils incorporados con los que viene Mac OS X de vainilla?

Ten en cuenta que estoy usando zsh, así que cuando establezco la ruta a algo, lo hago así:

path=(/usr/local/bin ~/.gem/ruby/2.0.0/bin ~/.nvm/bin ~/bin /bin $path)

Quiero poder decir,

Incluya todo lo presente en la ruta actual en la nueva ruta, excluyendo estos archivos: /usr/bin/ls , /usr/bin/grep ...

    
pregunta Alexej Magura 11.11.2013 - 18:27

2 respuestas

4

Agregue lo siguiente a su ruta para reemplazar las herramientas OS X con Homebrew Coreutils:

$(brew --prefix coreutils)/libexec/gnubin

Sintaxis de zsh ...

path=($(brew --prefix coreutils)/libexec/gnubin $path)
    
respondido por el grg 11.11.2013 - 18:40
4

Primero, no desea eliminar ninguna de las herramientas de línea de comandos que proporciona Apple a menos que desee un sistema inestable / inutilizable. Sin embargo, a la manera tradicional de Unix / Linux, puede configurar su declaración de ruta para verificar primero /usr/local/bin , por lo que las utilidades instaladas allí (por defecto para homebrew) se usarán antes de /usr/bin (o /bin ). El problema restante está en los scripts de shell: debe ser explícito ya que pueden ignorar su $ PATH.

    
respondido por el sdmeyers 11.11.2013 - 19:06

Lea otras preguntas en las etiquetas