Yo uso !ls
para ejecutar el comando bash. Pero después de haber configurado algo como source ~/.usr_profile
en el archivo ~/.profile
, vim tampoco obtendrá este archivo. Entonces cuando quiero ejecutar una función declarada en usr_profile
, tengo que ejecutar :!source ~/.usr_profile && my_command
. Cuando estoy usando esto una o dos veces, está bien. Pero cuando lo utilizo con frecuencia, mi vimrc se vuelve desordenado.
¿Hay algún método mejor para solucionar este problem.thanks¿Cómo hacer que vim use el mismo entorno que mi shell de inicio de sesión al ejecutar comandos con "!"?
Respuesta
La adición de esta línea a su ~/.vimrc
debe resolver su problema inmediato:
set shell=bash\ -l
Cuando invoca con -l
(--login
), bash lee su ~/.profile
en el arranque (entre otros archivos) y, por lo tanto, todo lo que proviene de allí.
Cuando se invoca con -i
(--interactive
), bash lee su ~/.bashrc
en el arranque (entre otros archivos) y por lo tanto todo lo que proceda de allí.
Pruebe $ man bash
o :h shell
y :h shellcmdflag
para obtener más información.
En cuanto a las diferencias entre el inicio de sesión y el shell que no inicia sesión, debo admitir mi ignorancia. This answer on serverfault puede ayudar, es interesante, de todos modos.
+1 para el enlace útil – Ves
Gracias, esto realmente funciona. –
- 1. ¿Cómo puedo hacer que TMUX esté activo cada vez que inicio una nueva sesión de shell?
- 2. vim - ejecutar: comandos en mi .bashrc
- 3. ¿Cómo hacer que Emacs use mi archivo .bashrc?
- 4. ¿Cómo hacer que el shell de emacs ejecute el archivo de inicio automáticamente?
- 5. Ejecutar comandos automáticamente al iniciar el shell de python
- 6. ¿Cómo hacer que Compass vea varias carpetas al mismo tiempo?
- 7. 10 segundos de retraso entre el inicio de sesión y el intérprete de comandos de shell.
- 8. ¿Cómo puedo hacer que el cliente web use cookies?
- 9. VIM: ¿Guardar y ejecutar al mismo tiempo?
- 10. Vim: cómo ejecutar el texto seleccionado como comandos vim
- 11. ¿Cómo hacer que LogonUser no use credenciales en caché?
- 12. Ejecutar el comando vim desde la línea de comandos
- 13. ¿Cómo puedo hacer que GIT sea el predeterminado en mi carpeta de inicio?
- 14. Python: ¿cómo ejecutar comandos de shell con pipe?
- 15. ¿Cómo puedo hacer que gdb guarde el historial de comandos?
- 16. ¿Cómo hacer que un WPF TextBox use caracteres de contraseña?
- 17. ¿Cómo incrustar Jetty en Spring y hacer que use el mismo AppContext en el que estaba incrustado?
- 18. Comandos de inicio de sesión de make
- 19. ¿Cómo hacer que Eclipse use JDK8 para compilar un proyecto?
- 20. ¿Cómo ejecutar comandos de shell desde una aplicación Mac/MacRuby?
- 21. ¿Cómo puedo hacer que mi script de Perl use múltiples núcleos para procesos secundarios?
- 22. ¿Cómo hacer que zsh se ejecute como un shell de inicio de sesión en Mac OS X (en iTerm)?
- 23. ¿Cómo hacer que HttpClient use Kerberos?
- 24. Shell de comandos que empiezan por ">"
- 25. ¿Cómo comienzo tmux con mi entorno actual?
- 26. ¿Cómo permito que Google indexe las partes de mi sitio requeridas para el inicio de sesión?
- 27. ¿Cómo hacer que colmena ejecute mapreduce trabajos al mismo tiempo?
- 28. JavaFX: ¿Cómo hacer que mi componente personalizado use todo el espacio disponible desde el diseño principal?
- 29. aplicaciones independientes que comparten el mismo ASP.Net cookie de sesión
- 30. Use el comando: g en vim con acciones múltiples
posible duplicado de [¿Cómo obtengo el comando vim's: sh para obtener mi bashrc?] (Http://stackoverflow.com/questions/1694599/how-do-i-get-vims-sh-command-to- source-my-bashrc) – nwinkler