¿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?


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\$ '

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

1

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


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

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
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.