¿Cómo puedo cambiar mi solicitud de bash para mostrar mi directorio de trabajo?

33

Puedo imprimir mi directorio de trabajo actual así

myPrompt$ pwd
/Users/me/myDir

Quiero que mi caparazón se vea así

/Users/me/myDir$ pwd
/Users/me/myDir

¿Es eso posible? ¿Cómo puedo hacerlo?

bernie2436
fuente
En OS X, el nombre del archivo es .bash_profile, no solo .profile. Eso se cargará automáticamente para ti.
No exactamente. OSX comienza shells de entrada por defecto y eso significa que las apariencias Bash ~/.bash_profile, ~/.bash_loginy ~/.profile, en ese orden, y lee y mandatos Ejecuta desde el primero que existe y es legible. En cualquier caso, esto es realmente un comentario y no una respuesta, así que lo estoy convirtiendo en uno.
terdon

Respuestas:

39

Puede usar secuencias de escape en variables de solicitud .

Pon esto en tu ~/.bashrc:

PS1='\w\$ '
Gilles 'SO- deja de ser malvado'
fuente
2
Gracias. Hice ese cambio. Ahora veo: Abrams-MacBook-Air-3: tmp abramhandler $ pwd; / Users / abramhandler / tmp Abrams-MacBook-Air-3: tmp abramhandler $ .... Solo quiero mostrar la parte que dice "tmp" en mi mensaje. ¿Cómo escondo el resto? Quiero ocultar las partes "abramhandler" y "Abram's-MacBook-Air-3"
bernie2436
77
@ akh2103 uso en \Wlugar de \w. Vea el enlace que Gilles le dio para obtener una explicación (breve) de los códigos de escape.
terdon
@terdon Veo lo mismo con \ W y \ w. Estoy ejecutando Unix en OSX.
bernie2436
2
@ akh2103 si está ejecutando OSX y está utilizando la aplicación de terminal, debe realizar cambios en ~ / .profile no .bashrc ya que el terminal ejecuta un shell de inicio de sesión de forma predeterminada. También debe obtener ~ / .profile o abrir una nueva terminal para que los cambios surtan efecto. Además, edite para agregar más información, no puedo entender lo que está pidiendo en su último comentario.
terdon
@terdon cuando ejecuto source ~ / .profile, cambia la ruta correctamente en el terminal actual. Pero cuando abro una nueva terminal, sigo viendo "aire de libro de mac de abram", etc. Intenté agregar source ~ / .profile a los archivos .profile y .bashrc, pero todavía no tuve suerte. ¿Algunas ideas?
bernie2436
4

Aquí hay una línea para OSX. Agrega la solicitud que deseas al archivo de perfil y luego vuelve a cargar el perfil.

echo "PS1='\w\$ '" >> ~/.bash_profile; source ~/.bash_profile

En El Capitan querrás usar

echo "PS1='\w\$ '" >> ~/.profile; source ~/.profile
Equipo
fuente
1

Por alguna razón '\w\$'no funcionó para mí, pero sí lo hice: export PS1="$(pwd) \$"y funcionó.

David
fuente
44
Eso no funcionará muy bien cuando cambies de directorio ...
Stephen Kitt
0

Parece un hilo viejo pero los pasos a continuación me funcionaron en OS X 10.9.5

  • poner PS1='\w\$ 'en~/.profile
  • si realizó algún cambio en ~/.bashrceliminarlos
  • cerrar la terminal con cmd+q
  • reabrir la terminal
Víctor
fuente
1
En mi caso, la RUTA completa es realmente grande, así que he agregado una bandera más para la siguiente línea como PS1 = '\ w \ n \ $'
vencedor el