Comment masquer le nom de l'ordinateur et le nom d'utilisateur dans l'invite de commande de terminal

63

Comment masquer le nom d'utilisateur et l'ordinateur dans l'invite de commande du terminal?

Dans le terminal on dit

Last login: Mon Jan 13 00:00:14 on ttys000
Whatever:~ UserName$ 

Est-il possible d'afficher uniquement le dossier actuel et de $signer?

Mohsen
la source
1
Qu'entendez-vous par montrer le dossier actuel ? Le dossier actuel est déjà affiché après le :. BTW: J'ai changé le nom de l'ordinateur dans Préférences Système -> Partage vers MBP. Maintenant, mon invite de connexion est très courte:mbp:~ matt$
gentmatt

Réponses:

92

Changez votre invite dans votre fichier ~ / .bashrc. L'exemple que vous avez demandé serait:

export PS1="\W \$"

Cela ferait apparaître le dossier actuel dans lequel vous êtes, plus un $ pour l'invite régulière et un # si vous êtes root. Consultez ce guide pour plus d'exemples de ce que vous pourriez montrer dans votre invite.

Modifier:

Selon un des commentaires ci - dessous, vous devrez peut - être source de votre ~/.bashrcde votre ~/.bash_profileou même mettre ce code dans votre ~/.bash_profilelieu. Vous pouvez lire cet article pour une meilleure explication sur le fichier à utiliser.

CaldwellYSR
la source
J'ai deux questions car je n'ai pas beaucoup d'expérience dans le terminal :). 1) Pourquoi écrivez-vous ~/.bashrc? J'ai trouvé ce fichier situé à /private/bashrc. 2) Je n'ai pas réussi à éditer le fichier car il est verrouillé. J'ai essayé de modifier les autorisations sans succès.
Gentmatt
2
/etc/bashrcest le fichier global pour tous les utilisateurs, ~/.bashrcest le vôtre. Les définitions dans votre propre écrasent tout ce qui est défini dans /etc/bashrc.
nohillside
1
Les fichiers bashrc sont vos fichiers de ressources bash. Où vous pouvez personnaliser l'invite, définir des alias, exporter des variables. Des choses de cette nature. Comme le dit patrix, les fichiers / etc / bashrc et / private / bashrc disposent de ressources système. Donc, quelque part dans / etc / bashrc se trouve une exportation PS1 et si vous éditez votre propre fichier bashrc situé à l'emplacement ~ / .bashrc et exportez votre propre PS1, l'invite de commande sera différente sur votre compte. Si vous voulez le changer pour tous les utilisateurs, vous devez éditer le fichier / etc / bashrc avec une commande sudo.
CaldwellYSR
2
pour ceux qui cherchent encore cette réponse .. vous devrez peut-être la mettre dans ~ / .bash_profile Puis lancez "source ~ / .bash_profile" ou ouvrez simplement un nouveau terminal.
Chris
export PS1 = '[\ h: \ W \ u \ $' pour annuler cette opération si vous le souhaitez.
Boldijar Paul
16
echo "export PS1='$ '" >> ~/.bash_profile
. ~/.bash_profile

Cela laissera juste $comme une invite. Si vous souhaitez restaurer l'ancienne invite, vous devez modifier .bash_profile pour supprimer cette ligne "export ...".

Dmitri
la source
Cela a fonctionné comme un charme dans la coquille bash dans CentOS 7
Santosh Kumar Arjunan
14

J'ai eu un problème similaire avec cela, mais je ne l'ai pas fait fonctionner au début.

C’est peut-être parce que je n’étais pas sudo, mais de toute façon, cela fonctionne tout aussi bien.

  1. Ouvrez les préférences dans le terminal (en haut à droite)
  2. Ensuite, allez dans l'onglet shell
  3. Puis copier / coller la commande export PS1="\W \$"; clear;
  4. Puis redémarrez le terminal et devrait fonctionner

entrez la description de l'image ici

willredington315
la source
Meilleur simple :).
Huynh Inc
C'est le meilleur pour les solutions temporaires.
Tarik
11

Découvrez ce tutoriel sur la façon de changer votre invite bash. Une version très courte (seulement le nom d'utilisateur et pas de chemin actuel): PS1="\u$ "

Résultat: myusername$ cat something.log

timbooo
la source
Cela fonctionne, le problème est que cela ne sauvera pas la nouvelle invite bash. Il montrera l'ancien après avoir arrêté mon mac. Pourquoi?
DzulFriday
2
Avez - vous mis la variable dans le fichier suivant: /Users/<yourusername>/.bash_profile?
timbooo
2

Éditez ~ / .bash_profile pour enregistrer vos modifications dans l'invite.

sudo nano ~/.bash_profile

A la fin, ajoutez vos modifications.

# Change prompt
export PS1="\W \$ "

Quittez, enregistrez les modifications. Appuyez sur Entrée pour confirmer le nom du fichier. Exécutez la source pour voir le changement.

source ~/.bash_profile
Cloris97
la source
Merci, cela a bien fonctionné pour moi avec OSX 10.12 Sierra.
Edvard Haugland
Pourquoi utiliser sudo?
dan
0

Créez / modifiez votre fichier .bash_profile ou votre racine:

sudo vim ~/.bash_profile

et ajouter cette ligne

export PS1="\W$: "

L'espace vous laissera un peu de répit dans l'invite de commande. Après cette modification, votre invite de commande ressemblera à ceci:

~$: 
Munna Khan
la source
0

Définissez DEFAULT_USERdans le ~/.zshrcfichier avec votre nom d'utilisateur habituel. Vous pouvez obtenir votre nom d'utilisateur exact en exécutant whoamidans le terminal. Quelque chose comme ça:

export DEFAULT_USER=username
John Kennedy
la source
0

export PS1 = "[\ 033 [01; 32m] \ W \ $ [\ 033 [00m]"

\ W vous donnera le dossier actuel (\ w pour inclure également le chemin). Les crochets définissent les codes de couleur. Cela met donc le dossier en cours en vert, puis réinitialise la couleur en blanc après l'invite.

Dovev Hefetz
la source
-3

Le mien est: PS1 = "\ W [\ 033 [32m] \ $ (parse_git_branch) [\ 033 [00m] $"

Carlos
la source
Nous recherchons des réponses longues qui fournissent des explications et un contexte. Ne vous contentez pas de donner une réponse d'une ligne. expliquez pourquoi votre réponse est juste, idéalement avec des citations. Les réponses qui n'incluent pas d'explications peuvent être supprimées.
Tetsujin
Supprimer, je m'en fiche, j'essayais seulement de vous aider!
Carlos