91 votes

Comment faire pour que le chemin complet du répertoire soit toujours affiché dans le terminal Mac (comme le terminal Linux) ?

Dans mon terminal ubuntu, le répertoire courant est toujours affiché complètement. Comme ceci :

blabla@blublu:~/music/my_album/classical/beethoven$

Mais sur mon Mac (Mac OS X 10.6.5), le terminal n'affiche pas le chemin complet et c'est comme ça :

blabas-MacBook-Pro:classique Beethoven$.

Y a-t-il un moyen de modifier le comportement du terminal Mac pour qu'il se comporte comme le terminal Linux ?

123voto

Asmus Points 2087

Pour que bash renvoie "user@hostname:path/to/directory$" comme invite, ajoutez la ligne suivante à votre ~/.bash_profile :

export PS1='\u@\H:\w$'

o

export PS1='\u@\H:\w$ '

si vous aimez avoir un espace entre le $ et la commande

pour que les changements prennent effet immédiatement, exécutez la commande suivante dans chaque fenêtre ouverte (ou redémarrez le Terminal) :

source ~/.bash_profile

EDIT : Une liste des chaînes disponibles se trouve dans le paragraphe "PROMPTING" de la page de manuel de bash ( man bash ):

PROMPING

  When executing interactively, bash displays the primary prompt PS1 when it is ready to read a command, and the secondary prompt PS2 when it needs more input to complete a command.  Bash allows these prompt strings  to  be  customized  by
   inserting a number of backslash-escaped special characters that are decoded as follows:
          \a     an ASCII bell character (07)
          \d     the date in "Weekday Month Date" format (e.g., "Tue May 26")
          \D{format}
                 the format is passed to strftime(3) and the result is inserted into the prompt string; an empty format results in a locale-specific time representation.  The braces are required
          \e     an ASCII escape character (033)
          \h     the hostname up to the first `.'
          \H     the hostname
          \j     the number of jobs currently managed by the shell
          \l     the basename of the shell's terminal device name
          \n     newline
          \r     carriage return
          \s     the name of the shell, the basename of $0 (the portion following the final slash)
          \t     the current time in 24-hour HH:MM:SS format
          \T     the current time in 12-hour HH:MM:SS format
          \@     the current time in 12-hour am/pm format
          \A     the current time in 24-hour HH:MM format
          \u     the username of the current user
          \v     the version of bash (e.g., 2.00)
          \V     the release of bash, version + patch level (e.g., 2.00.0)
          \w     the current working directory, with $HOME abbreviated with a tilde
          \W     the basename of the current working directory, with $HOME abbreviated with a tilde
          \!     the history number of this command
          \#     the command number of this command
          \$     if the effective UID is 0, a #, otherwise a $
          \nnn   the character corresponding to the octal number nnn
          \\     a backslash
          \[     begin a sequence of non-printing characters, which could be used to embed a terminal control sequence into the prompt
          \]     end a sequence of non-printing characters

12voto

Andres Ramos Points 243

J'ai fait en sorte qu'il ressemble beaucoup au terminal centOS sur mon Mac. Ouvrez bash_profile, sur le terminal

nano ~/.bash_profile

Ajoutez ce qui suit

# Show always fullpath on terminal
export PS1='\u@\H [\w]$ '

Redémarrez le terminal et vous aurez l'apparence suivante

username@host.local [/Applications/MAMP/htdocs]$

11voto

Steven Points 11

Je ne suis pas sûr pour Mac, mais dans Ubuntu j'ai a modifié l'invite du terminal Gnome avec

PS1="\a\n\n\e[31;1m\u@\h on \d at \@\n\e[33;1m\w\e[0m\n$ "

6voto

superNobody Points 96

Valeur intérieure du PS1, " \w "représente le chemin complet, où " \W " représente uniquement le nom du répertoire actuel.

http://tldp.org/HOWTO/Bash-Prompt-HOWTO/bash-prompt-escape-sequences.html

3voto

Stefan Falk Points 375

Si vous ne voulez pas modifier votre ~/.bash_profile vous pouvez aussi simplement configurer votre profil de terminal. Cliquez sur Terminal > Prefences et de là, aller à la Profiles et ensuite à l'onglet Shell onglet. Activez [x] Run command et saisissez export PS1='\u@\H:\w$ ' .

C'est juste une autre façon de faire.

enter image description here

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X