En terminal, modifique el text que viene antes de $

En la terminal, siempre puedo ver en qué path estoy:

macbook-romeo:School romeovs$ echo "example command" 

que me parece bastante útil. Sin embargo, aquí también hay muchas cosas innecesarias: macbook-romeo no es útil ya que siempre estoy en mi macbook (duh). Entonces otra vez romeovs es bastante útil (este es mi nombre de usuario).

  • La input del usuario asignada a la variable en AppleScript luego pasa al command "do shell script"
  • Lista de todas las tags en Terminal en Mavericks?
  • Cuando se lanza `screen`, el entorno" normal "de bash no está configurado
  • ¿Cómo puedo usar tmutil para descubrir qué files acaban de eliminarse?
  • ¿Cómo puedo deshacer la sobreescritura de mi carpeta / usr / local / bin?
  • Conciso iniciar aplicaciones de Mac OS desde la command-line
  • ¿Hay algún deseo de editar lo que se muestra aquí? p.ej

     22:50 - School - Romeo$ echo "example" 

    donde 22:50 es la hora actual? (Esto es solo un ejemplo, por supuesto, no necesitaré time, usaría el text para ser un poco más minimalist).

  • Cambiar la location de la networking desde la terminal
  • ¿Hay una versión de Mac OS X Terminal del command "gratis" en los sistemas Linux?
  • Control - C en una request de contraseña en la terminal
  • "Xcode-select --install" versus recuperar el dmg del website para desarrolladores de Apple
  • Encuentra files modificados hoy, usando la línea de command (bash)
  • ¿Es posible cambiar la forma en que Terminal muestra el permiso de los files?
  • 3 Solutions collect form web for “En terminal, modifique el text que viene antes de $”

    Este artículo de OSX Daily tiene algunas instrucciones detalladas sobre cómo hacerlo. En resumen, necesitas modificar tu file ~/.bash_profile y modificar la variable PS1.

    A continuación hay una list de posibles variables que puede haber exhibido:

    • \ d – Fecha actual
    • \ t – Hora actual
    • \ h – Nombre de host
    • # – Número de command
    • \ u – Nombre de usuario
    • \ W – Directorio de trabajo actual (es decir: Escritorio /)
    • \ w – Directorio de trabajo actual, ruta completa (es decir: / Users / Admin / Desktop)

    Necesita modificar el file .bashrc que se encuentra en su directory de inicio .

    Abra la terminal y haga lo siguiente:

    • cd ~
    • touch .bashrc
    • open .bashrc

    Agregue la siguiente línea al final de su file .bashrc

    exportar PS1 = '\ t – \ W – \ u \ $'

    • Guarde el file y cierre su editor
    • Regrese a la terminal e ingrese el siguiente command:

      fuente .bashrc

    ¡Auge! ¡Ahora debería tener su request deseada! (Si el indicador deseado fue su ejemplo)

    Esto está controlado por la variable de shell $ PS1

    Puede establecer esta variable en lo que desee, temporal o permanentemente con un script .login o .profile, dependiendo de qué shell use.

    Eche un vistazo a la siguiente salida para ver ejemplos:

     Last login: Fri Oct 21 21:59:28 on ttys000 Dans-MacBook-Air:~ stuffe$ echo $PS1 \h:\W \u\$ Dans-MacBook-Air:~ stuffe$ PS1="Hello World $" Hello World $PS1=`date` Fri 21 Oct 2011 22:03:23 BSTsleep 60 Fri 21 Oct 2011 22:03:24 BSTPS1="`date +%H:%M` $" 22:04 $PS1="\h:\W \u\$" Dans-MacBook-Air:~ stuffe$ 

    Las posibilidades son infinitas. También hay algo que puedes hacer con PS2, pero creo que solo tiene efecto si eres root: los detalles son borrosos, mi Unix fue hace mucho time y está basado en Solaris, no en Mac OS X, pero los fundamentos son los mismos.

    Información adicional: como se sugiere en otras respuestas, hay indicadores incorporados como \ h y \ W, etc. que puede usar, pero también puede usar el resultado de casi cualquier command, usando los "tics de retroceso" (comillas simples divertidas) utilizado en mi ejemplo de date anterior). Los commands dentro de los ticks de atrás se ejecutan y la salida se sustituye, lo que le permite include cualquier cosa, incluso si no hay una bandera incorporada, incluso para cosas aparentemente estúpidas, lo que sea que se le ocurra. ¿Desea include la hora de la última input en un file de logging de errores? Use algo como:

     PS1="`tail -1 $LOGFILE | awk '{print $1}'` $ " 

    (lea la última línea del file referencedo por $ LOGFILE, e imprima la 1ra columna suponiendo un delimitador de campo pnetworkingeterminado) etc. etc. Si puede ejecutarlo, puede includelo.

    Loving Apple Products like poisoning (iPhone, iPad, iMac, Macbook, iWatch).