Comment puis-je changer mon tcsh invite à montrer mon répertoire de travail actuel?
Je suis en utilisant tcsh
et je suis à la recherche d'une façon sensible répertoire de travail où j'ai au moins souhaitez afficher le nom de dossier au lieu d'obtenir le chemin d'accès complet.
Imaginer mon répertoire de travail actuel est :
[user@hostname/home/us/Desktop/my/projects]
alors je voudrais afficher l'invite comme ceci :
[user@hostname projects]
l'heure actuelle, je suis en utilisant le .cshrc
fichier dans le fichier que j'ai écrit comme ceci:
alias setprompt 'set prompt="[suman@`hostname` `pwd`:~] $"'
alias setprompt 'set prompt="${LightGreen}[${yellow}suman${Light}${LightPurple}@%m ${LightGreen}:~] ${yellow}$ ${end} "'
Je n'ai pas de variable PS1 aussi et je ne sais pas ce qu'il fait, et je voudrais savoir la différence entre .cshrc
fichier et .bashrc
fichier.
- Je trouve que lorsque je suis en train de travailler dans les répertoires qui sont sur plusieurs niveaux de profondeur et les noms sont longs, l'invite sur le membre de droite de l'écran n'est pas utile. Personnellement, je refuse de mettre le répertoire de travail dans mon invite de commandes. Mais par tous les moyens aller trouver les autres questions sur le sujet.
- Double Possible de Bash: personnalisé PS1 avec de travail agréable chemin d'accès au répertoire
- Le
.cshrc
fichier est utilisé par le shell C; la.bashrc
fichier est utilisé par Bash. Vous pouvez regarder, parmi beaucoup d'autres questions, Bash: personnalisé PS1 avec de travail agréable chemin d'accès au répertoire. - Peut-être il va sans dire... mais si vous voulez voir ce que vos
prompt
est actuellement à avant d'aller vous changer, vous pouvez faireecho $prompt
Vous devez vous connecter pour publier un commentaire.
Vous pouvez utiliser:
%n
pour le nom d'utilisateur,%m
du nom de domaine jusqu'à la première.
, et%c
pour le dernier répertoire de la partie. Il existe un grand nombre de ces substitutions sont disponibles, vous pouvez trouver une liste de ces danstcsh(1)
, reproduites ci-dessous pour plus de commodité.À l'aide de
`pwd`
ne fonctionne pas, parce que lecshrc
fichier est en lecture seule une fois sur shelll de démarrage, pas à chaque changement de répertoire.La
cshrc
fichier est utilisé parcsh
ettcsh
, lebashrc
fichier est utilisé parbash
. Bien qu'ils servent le même but, ils sont différents programmes (comme~/.mozilla/firefox
et~/.config/chromium
).pwd
ne fonctionne pas dansset prompt
dans un.chsrc
, maisprecmd
peut être utilisé pour définir l'invite à chaque fois avant de l'invite est imprimé. (par exemple, voir stackoverflow.com/questions/9973266/...).cshrc
est le fichier de configuration pour le csh ou tcsh, wheras.bashrc
est le fichier de configuration, eh bien, bash. Même si elles servent un but similaire, bash et csh sont simplement différents programmes, de sorte que la configuration pour l'un ne le sera pas nécessairement pour l'autre.Donc ce que vous devez faire est de mettre une ligne comme ceci dans votre .bashrc
où
\w
est la magie de code qui sera élargi pour le répertoire de travail courant, comme vous pouvez le chercher dans le bash de l'homme page dans la section "Invites".Un exemple plus complet, pris de la valeur par défaut de Cygwin du paquet bash, peut ressembler à ceci:
Il sera élargi à une invite de commandes comme ceci (mais avec des couleurs, uuuh):
\W
correspond à la dernière étape de la MDC.ps -p $$
et vérifiez si la Commande de colonne fait référence à bash.