Retour au blog
DevOps 10 min read 18 mars 2026

Mon .bashrc Ubuntu pour Python, l'IA et le développement quotidien

Toutes les commandes, alias et fonctions de mon .bashrc : navigation, git, infos système, contrôle de la stack IA, environnements Python, Jupyter, GPU et une seule commande pour tout mettre à jour.

#Ubuntu#Bash#Setup développeur#Python#IA#Productivité

Un bon fichier .bashrc est presque invisible : tout fonctionne, tout va vite, et on ne réfléchit plus à ses commandes. Un mauvais .bashrc, au contraire, vous condamne à retaper la même instruction de 30 caractères pour la millième fois.

Voici la configuration complète que j’utilise sur Ubuntu pour le développement Python et IA. Chaque commande est présentée avec son comportement précis, afin que vous puissiez piocher uniquement ce qui vous est utile.

Pour appliquer une modification :

source ~/.bashrc

Options du shell

Ces réglages vont tout en haut du fichier, avant le reste.

HISTCONTROL=ignoreboth
HISTSIZE=10000
HISTFILESIZE=20000
HISTIGNORE="history*:ls:ll:la:pwd:exit:clear:h:hg"
HISTTIMEFORMAT="%Y-%m-%d %H:%M:%S  "
shopt -s histappend
shopt -s checkwinsize
shopt -s globstar
shopt -s autocd
shopt -s cdspell

Pourquoi c’est utile :

  • HISTSIZE=10000 évite de perdre des commandes utiles au bout de quelques jours
  • HISTTIMEFORMAT ajoute un horodatage précis à chaque entrée de l’historique
  • globstar permet d’utiliser ** pour parcourir récursivement des dossiers
  • autocd permet d’entrer directement un nom de dossier sans taper cd
  • cdspell corrige automatiquement de petites fautes de frappe dans les chemins

Affichage des fichiers

alias ls='ls --color=auto --human-readable --classify --group-directories-first'
alias ll='ls -alF --group-directories-first'
alias la='ls -A'
alias l='ls -CF'
alias lt='ls -ltr --group-directories-first'
alias lS='ls -lSr --group-directories-first'

Quelques usages :

  • ls pour un affichage lisible avec les tailles en format humain
  • ll pour tous les détails, y compris permissions, taille, propriétaire et date
  • la pour afficher les fichiers cachés sans les entrées . et ..
  • lt pour voir rapidement ce qui a changé récemment
  • lS pour repérer ce qui prend le plus de place

Le petit changement le plus rentable ici est --group-directories-first. Une fois qu’on s’y habitue, on ne veut plus jamais revenir à un listing où dossiers et fichiers sont mélangés.


Commandes système plus sûres

alias cp='cp -iv'
alias mv='mv -iv'
alias mkdir='mkdir -pv'
alias df='df -h --total'
alias du='du -h --max-depth=1 | sort -hr'
alias free='free -h --si'
alias ps='ps aux --sort=-%cpu'
alias top='command -v htop &>/dev/null && htop || top'
alias cat='command -v batcat &>/dev/null && batcat --style=plain || cat'

Ce que cela change :

  • cp et mv demandent confirmation avant écrasement et affichent ce qu’ils font
  • mkdir -pv crée automatiquement les dossiers parents
  • df et free affichent des formats lisibles
  • du devient beaucoup plus utile pour repérer la consommation disque
  • top ouvre htop si disponible
  • cat utilise bat quand il est installé, avec coloration et confort de lecture

alias ..='cd ..'
alias ...='cd ../..'
alias ....='cd ../../..'
alias back='cd -'

mkcd() { mkdir -p "$1" && cd "$1"; }

Les plus utiles au quotidien :

  • .., ..., .... pour remonter rapidement dans l’arborescence
  • back pour revenir au dossier précédent
  • mkcd projet/src pour créer l’arborescence et s’y déplacer immédiatement

mkcd est probablement l’une des fonctions les plus rentables d’un .bashrc, parce qu’on crée sans cesse de nouveaux dossiers de projet, d’essai ou de travail temporaire.


Recherche dans l’historique

alias h='history | tail -40 | sed "s/^ *[0-9]* //"'
hg() { history | grep --color=auto -i "$*"; }
  • h affiche les 40 dernières commandes de façon propre
  • hg docker cherche toutes les commandes contenant docker

Si fzf est installé, Ctrl+R devient encore plus puissant grâce à la recherche floue.


Informations système

Quelques fonctions que j’aime garder sous la main :

sysinfo
ports
myip
psg python
killport 3000

Elles servent à :

  • obtenir une vue rapide de la machine
  • lister les ports en écoute
  • afficher les IP locales
  • rechercher un processus en cours
  • tuer ce qui bloque un port donné

Ce sont des petites commandes, mais elles font gagner du temps exactement au moment où l’on n’a pas envie de se rappeler une syntaxe obscure.


Raccourcis Git

alias gs='git status -sb'
alias gd='git diff --stat'
alias gdc='git diff --cached --stat'
alias ga='git add'
alias gc='git commit -m'
alias gca='git commit --amend --no-edit'
alias gp='git push'
alias gl='git pull'
alias gb='git branch -vv'
alias gco='git checkout'
alias glog='git log --oneline --graph --decorate --color --all | head -30'
alias gundo='git reset --soft HEAD~1'
alias gclean='git clean -fd'

Les alias les plus utiles ici sont souvent :

  • gs pour un état rapide
  • gd et gdc pour voir ce qui a changé ou ce qui est prêt à être commité
  • glog pour visualiser la structure récente des branches
  • gundo pour annuler le dernier commit sans perdre le travail

L’idée n’est pas de remplacer Git par des raccourcis exotiques, mais de réduire la friction sur les commandes répétées toute la journée.


Pourquoi ce type de .bashrc change vraiment la journée de travail

On sous-estime souvent la quantité de micro-frictions qui s’accumulent dans une journée de développement : naviguer entre dossiers, relancer des services, retrouver une commande, vérifier un port, inspecter l’état d’un dépôt, activer un environnement, corriger un chemin.

Un bon .bashrc n’est pas censé être spectaculaire. Il est censé rendre tout cela plus fluide, plus cohérent et moins fatigant. Le gain vient moins d’une commande miracle que de l’effet cumulé de dizaines d’ajustements modestes.


Comment l’utiliser intelligemment

La bonne approche n’est pas de copier un .bashrc complet sans réfléchir. Le mieux est de prendre ce qui correspond réellement à vos habitudes :

  • si vous travaillez surtout en Python, gardez les helpers liés aux environnements et au shell
  • si vous faites beaucoup de Git, les alias de statut et de diff seront vite rentabilisés
  • si vous gérez souvent des services locaux, ports, psg et killport deviennent vite indispensables

Construire un bon .bashrc, c’est surtout documenter sa propre façon de travailler et réduire le nombre de décisions inutiles dans la journée.

Questions fréquentes

De quoi parle Mon .bashrc Ubuntu pour Python, l'IA et le développement quotidien ?

Toutes les commandes, alias et fonctions de mon .bashrc : navigation, git, infos système, contrôle de la stack IA, environnements Python, Jupyter, GPU et une seule commande pour tout mettre à jour.

À qui s’adresse cet article ?

Cet article s’adresse aux ingénieurs, responsables techniques et équipes data travaillant sur Ubuntu, Bash, Setup développeur.

Comment utiliser cet article ?

Utilisez-le comme référence pratique pour les décisions DevOps, les arbitrages d’architecture et les workflows de production.

Article complet

Lire la version anglaise integrale

La version anglaise contient tout le detail de l’analyse, y compris les explications techniques, les exemples et les points de comparaison.

Ouvrir l’article anglais
Autres articles

Parcourir les autres resumes et articles du blog.

Projets

Voir les outils, datasets et bibliotheques publies.

Contact

Discuter d’un projet de donnees, d’IA ou d’architecture.