Personaliser votre shell Bash peut considérablement accélérer vos actions quotidiennes. Dans ce guide, vous apprendrez à créer des alias utiles et à configurer un prompt dynamique affichant des informations clés.
Prérequis
- Un serveur ou poste Linux avec Bash (Debian, Ubuntu, CentOS, etc.)
- Accès à votre fichier
~/.bashrc
1. Ajouter des alias pratiques
Les alias vous permettent de remplacer des commandes longues par des raccourcis :
# Ouvrez ~/.bashrc pour édition
nano ~/.bashrc
Ajoutez par exemple :
alias ll='ls -alF'
alias la='ls -A'
alias grep='grep --color=auto'
alias dfh='df -h'
alias dux='du -x --max-depth=1 -h'
Enregistrez et rechargez :
source ~/.bashrc
2. Configurer un prompt dynamique
Le prompt Bash peut afficher le chemin courant, l'heure, l'utilisateur, etc. :
Ouvrez ~/.bashrc
et modifiez la variable PS1
:
# Exemple de prompt : [user@host:cwd]$(git branch 2>/dev/null)
PS1='\[\e[32m\]\u@\h\[\e[0m\]:\[\e[34m\]\w\[\e[0m\]$(git branch &>/dev/null; if [ $? = 0 ]; then echo " (git:$(git rev-parse --abbrev-ref HEAD))"; fi)\$ '
Explication des codes :
\u
: nom de l'utilisateur\h
: nom de la machine (host)\w
: chemin actuel\e[32m
et\e[34m
: codes de couleur ANSI- Partie git : affiche la branche si dans un dépôt Git
Rechargez :
source ~/.bashrc
3. Personaliser le message lors de l'ouverture du terminal
Vous pouvez afficher un message de bienvenue ou des informations système :
Ajoutez à ~/.bashrc
:
echo "Bienvenue, $(whoami)! Aujourd'hui nous sommes le $(date '+%Y-%m-%d')."
echo "Charge CPU : $(uptime | awk -F 'load average:' '{ print $2 }')"
4. Astuces avancées
- Prompt avec retour de statut : ajoutez
\$?
pour afficher le code de sortie de la dernière commande. - Prompt multi-lignes : utilisez
\n
pour sauter des lignes. - Themes : explorez des frameworks comme oh-my-bash ou bash-it.
Conclusion
Configurer des alias et un prompt personnalisé améliore votre efficacité en ligne de commande. N'hésitez pas à adapter ces exemples à votre flux de travail pour gagner du temps et avoir un environnement qui vous ressemble.