tl; versión dr: use ~/.zshrc
Y lea la página del manual para comprender las diferencias entre:
  ~/.zshrc, ~/.zshenvY ~/.zprofile.
Respecto a mi comentario
En mi comentario adjunto a la respuesta que dio kev , dije:
  Esto parece ser incorrecto: / etc / profile no aparece en ninguna documentación de zsh que pueda encontrar.
Esto resulta ser parcialmente incorrecto: /etc/profile puede ser obtenido por zsh. Sin embargo , esto solo ocurre si zshse "invoca como sho ksh"; en estos modos de compatibilidad:
  Los scripts habituales de inicio / apagado de zsh no se ejecutan. Inicio de sesión shells source / etc / profile seguido de $ HOME / .profile. Si la variable de entorno ENV se establece en la invocación, $ ENV se obtiene después de los scripts de perfil. El valor de ENV está sujeto a expansión de parámetros, sustitución de comandos y expansión aritmética antes de ser interpretado como un nombre de ruta. [ man zshall, "Compatibilidad" ].
El enlace ArchWiki ZSH dice:
  Al iniciar sesión, Zsh obtiene los siguientes archivos en este orden: 
  / etc / profile 
  Este archivo proviene de todos los shells compatibles con Bourne al iniciar sesión
Este implys que /etc/profileestá siempre lea por zshal iniciar la sesión - No tengo ninguna experiencia con el proyecto Arch Linux; la wiki puede ser correcta para esa distribución, pero generalmente no es correcta. La información es incorrecta en comparación con las páginas del manual de zsh, y no parece aplicarse a zsh en OS X (las rutas $PATHestablecidas en /etc/profileno llegan a mis sesiones de zsh).
Para abordar la pregunta:
  ¿Dónde exactamente debería colocar mis adiciones de rvm, python, nodo, etc.a mi $ PATH?
En general, me gustaría exportar mi $PATHa partir ~/.zshrc, pero vale la pena tener una lectura de la zshall página del manual, en concreto la sección de "inicio / apagado ARCHIVOS" - ~/.zshrcse lee para interactivos conchas, que pueden o no pueden satisfacer sus necesidades - si desea que el $PATHde cada zshshell invocado por usted (ambos interactivey no, ambos loginy no, etc.), entonces ~/.zshenves una mejor opción.
  ¿Hay algún archivo específico que deba usar (es decir, .zshenv que no existe actualmente en mi instalación), uno de los que estoy usando actualmente, o incluso importa?
Hay un montón de archivos leídos al inicio (verifique las manpáginas vinculadas ), y hay una razón para eso: cada archivo tiene su lugar particular (configuraciones para cada usuario, configuraciones para usuarios específicos, configuraciones para shell de inicio de sesión, configuraciones para cada shell, etc). 
No se preocupe por ~/.zshenvno existir: si lo necesita, hágalo y se leerá.
.bashrcy no.bash_profile son leídos por , a menos que los obtenga explícitamente de o similar; entre la sintaxis y es que no siempre son compatibles. Ambos y están diseñados para configuraciones, no configuraciones.zsh~/.zshrcbashzsh.bashrc.bash_profilebashzsh
                 
                
.bashrcy.bash_profileno son leídos porzshlo que actualmente tengo mirvmademás de$PATHen.bashrc, y mipythonadición en.bash_profile, y ambos se están agregando bien. En cualquier caso, voy a mover todas mis$PATHexportaciones a,~/.zshrcya que todas las demászshconfiguraciones están alojadas allí. Debo admitir que no estoy muy familiarizado con los diferentes tipos de conchas. Al leer los enlaces que publicaste, supongo que uso un shell interactivo, pero seguiré leyendo para estar seguro ... ¡Gracias de nuevo!Aquí están los documentos de las páginas de manual de zsh en la sección ARCHIVOS DE INICIO / APAGADO.
A partir de esto, podemos ver que el orden de lectura de los archivos es:
Puede obtener más información aquí .
fuente
Tuve un problema similar (en bash, el comando de terminal funcionaba correctamente, pero zsh mostró el error de comando no encontrado)
Solución:
simplemente pegue lo que estaba pegando anteriormente en ~ / .bashrc para:
fuente