¿Qué está cambiando mi $PATH?

Cuando abro una nueva Terminal, $PATH no es lo que configuré en .zshenv

grep -i path .??*muestra que ningún otro archivo de puntos establece la ruta.

Agregando un par de echo, veo:

Last login: Thu Nov 18 13:29:13 on ttys000
PATH: /usr/bin:/bin
path: /usr/bin /bin
WGroleau@MBP ~ % echo $PATH
/Users/WGroleau/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/Apple/usr/bin:/Users/WGroleau/bin:/opt/local/bin:/opt/local/sbin:/usr/local/sbin
WGroleau@MBP ~ % cat .zshenv
echo "PATH: $PATH"
echo "path: $path"
LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8
export LANGUAGE=en_US.UTF-8
export HOMEBREW_NO_ANALYTICS=1
export PATH=~/bin:/opt/local/bin:/opt/local/sbin:/usr/local/bin:/usr/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin
WGroleau@MBP ~ % 

¡/Library/Apple/usr/bin ni siquiera existe! Por el comentario, supongo que es algo que Apple eliminó en 12.0.1

RE: "¡/Library/Apple/usr/bin ni siquiera existe!" -- ¿Qué versión de macOS está ejecutando? Lo pregunto porque existe en mi sistema con macOS Catalina y macOS Big Sur .
Agregue set -xa su .zshenv, para que imprima lo que sucede en los archivos de inicio y pueda ver dónde se realizan las adiciones.
¿Qué hay en /Librería/Apple/usr/bin? Tal vez sea un error que Apple lo movió y no pudo cambiar lo que lo puso en el camino.

Respuestas (1)

Del comentario de Gordon, encontré dos cosas desconcertantes:

  1. -x muestra alrededor de cien acciones para CADA comando ingresado.

  2. /etc/zprofile se llama DESPUÉS del .zshenv del usuario para cambiar la ruta usando un ejecutable compilado en /usr/libexec/path_helper, que anula ~/.zshenv al leer los archivos /etc/paths y /etc/paths.d/*

Por lo tanto, no se sabe si se trata de un error de Apple o si lo hizo un tercero. La página de manual dice que puedo anular el daño en ~/.zprofile