🐧 Linux : Astuces et raccourcis utiles

Cette fiche rassemble des astuces et raccourcis utiles pour gagner en productivité sous Linux. Des petites techniques qui font gagner du temps au quotidien pour les utilisateurs débutants comme expérimentés.

📑 Sommaire

⌨️ Raccourcis clavier dans le terminal

Ces raccourcis clavier sont essentiels pour travailler efficacement dans le terminal :

Raccourci Action
Ctrl + C Interrompre la commande en cours
Ctrl + L Nettoyer l'écran (équivalent à clear)
Ctrl + A Aller au début de la ligne
Ctrl + E Aller à la fin de la ligne
Ctrl + R Rechercher une commande précédente
Ctrl + U Effacer du curseur jusqu'au début de la ligne
Ctrl + K Effacer du curseur jusqu'à la fin de la ligne
Ctrl + W Effacer le mot précédent
Alt + B Reculer d'un mot
Alt + F Avancer d'un mot
Tab Autocomplétion
Ctrl + D Fermer le terminal ou déconnecter (si vide)
Ctrl + Z Suspendre un processus (mettre en arrière-plan)

💡 Astuces générales

Quelques astuces pour faciliter votre travail quotidien :

!!                    # Réexécute la dernière commande
!sudo !!              # Réexécute la dernière commande avec sudo
cd -                  # Retourne au répertoire précédent
mkdir -p a/b/c        # Crée des dossiers imbriqués
find . -name "*.txt"  # Trouve les fichiers .txt
command | xargs cmd   # Applique cmd à chaque résultat
command &             # Exécute en arrière-plan
fg                    # Ramène une tâche en premier plan
bg                    # Continue une tâche en arrière-plan

📜 Utilisation de l'historique

L'historique des commandes est un outil puissant :

history                # Affiche l'historique des commandes
history | grep ssh    # Recherche des commandes ssh précédentes
!42                   # Exécute la commande n°42 de l'historique
Ctrl + R              # Recherche interactive dans l'historique
^erreur^correction    # Remplace erreur par correction dans la dernière commande
$_                    # Référence le dernier argument de la commande précédente

Configuration de l'historique dans ~/.bashrc :

export HISTSIZE=10000        # Nombre de commandes mémorisées en session
export HISTFILESIZE=100000   # Nombre de commandes sauvegardées dans le fichier
export HISTCONTROL=ignoredups:erasedups  # Ignore les doublons
shopt -s histappend          # Ajoute au fichier plutôt que de l'écraser

🏷️ Alias pratiques

Créez des raccourcis pour vos commandes fréquentes :

# Définir un alias temporairement
alias ll='ls -alF'
alias update='sudo apt update && sudo apt upgrade'

# Supprimer un alias
unalias ll

# Alias persistants (à ajouter dans ~/.bashrc)
echo "alias ll='ls -alF'" >> ~/.bashrc
echo "alias update='sudo apt update && sudo apt upgrade'" >> ~/.bashrc
source ~/.bashrc  # Recharger .bashrc

Exemples d'alias utiles pour votre ~/.bashrc :

alias cp='cp -iv'           # Copie interactive et verbeuse
alias mv='mv -iv'           # Déplacement interactif et verbeux
alias mkdir='mkdir -pv'     # Crée les parents si nécessaire
alias df='df -h'            # Affichage lisible
alias free='free -m'        # Taille en mégaoctets
alias more='less'           # less est plus puissant que more
alias grep='grep --color=auto'  # Coloration des résultats

🧹 Nettoyage système

Commandes pour nettoyer votre système et libérer de l'espace :

# Pour les systèmes Debian/Ubuntu
sudo apt autoremove   # Supprime les paquets inutilisés
sudo apt clean        # Vide le cache des archives de paquets
sudo apt autoclean    # Nettoie les anciennes versions

# Nettoyer les journaux système volumineux
sudo journalctl --vacuum-time=10d  # Garde seulement 10 jours de logs

# Trouver et supprimer les fichiers temporaires
find /tmp -type f -atime +10 -delete  # Fichiers non accédés depuis 10 jours

# Trouver les gros fichiers
find / -type f -size +100M -exec ls -lh {} \; | sort -k5,5hr

🚀 Astuces de productivité

Techniques avancées pour gagner en efficacité :

# Multitâche avec tmux ou screen
tmux                  # Démarre une session tmux
Ctrl+b c              # Crée un nouvel onglet dans tmux
Ctrl+b 0-9            # Navigue entre les onglets

# Réutiliser les paramètres de commande
command !$            # Utilise le dernier argument
command !^            # Utilise le premier argument
command !*            # Utilise tous les arguments

# Exécuter une commande à intervalle régulier
watch -n 1 'commande'  # Exécute toutes les secondes

# Exécuter une commande dans plusieurs répertoires
find . -type d -exec sh -c 'cd {} && commande' \;

# Globbing avancé
ls *.{jpg,png}        # Liste tous les .jpg et .png
ls [A-Z]*             # Liste les fichiers commençant par une majuscule
🎁 Bonus : Configuration avancée du shell

Personnalisation du prompt PS1

# Prompt coloré avec informations utiles
PS1='\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '

# Prompt avec l'heure, le nom d'utilisateur et le répertoire
PS1='[\t] \u:\w\$ '

Configuration bash pour développeurs

# Complétion sensible à la casse
bind "set completion-ignore-case on"

# Complétion sur une simple tabulation
bind "set show-all-if-ambiguous on"

# Autocomplétion pour les commandes sudo
complete -cf sudo

# Correction automatique de cd
shopt -s cdspell

Installer et configurer oh-my-bash pour un shell plus puissant

bash -c "$(curl -fsSL https://raw.githubusercontent.com/ohmybash/oh-my-bash/master/tools/install.sh)"
🏠 Retour au sommaire général