
Table des matières
En tant qu’utilisateurs de Linux, c’est un moment spécial où nous ouvrons un terminal pour la première fois et commençons à travailler sur le système d’une manière la plus efficace, puissante et flexible. Cependant, votre première incursion dans le terminal pourrait potentiellement être intimidante, car tout ce que vous êtes accueilli est un curseur clignotant et un monde sans fin de possibilités. Pour aider à cela, nous vous montrons quelques conseils et astuces bash pour travailler plus intelligemment, pas plus difficile, dans le terminal.
Bash contre le terminal
Si vous pensez que Bash est le terminal, et vice versa, vous avez plus tort que bien. Le terminal est l’application (ou l’interface graphique) où vous tapez des commandes pour interagir avec le système. Bash est le shell (langage de programmation pour UNIX) qui interprète les commandes que vous tapez et les exécutez. Ainsi, lorsque nous ouvrons le terminal et y travaillons, nous avons en fait affaire à la coquille de bash (ou Zsh, poisson ou la coquille qui accompagne votre système). Les conseils et astuces suivants sont des conseils de lignes de commande qui fonctionnent sur le shell bash, plutôt que sur l’application terminale.
1. Créez des alias personnalisés pour des commandes fréquentes
Vous êtes-vous toujours fatigué de taper la même longue commande à chaque fois? Ou avez-vous des commandes que vous tapez une douzaine de fois par jour? Si tel est le cas, vous devriez utiliser des alias. Avec des alias, vous n’avez pas besoin de taper le tout, vous tapez simplement vos alias courts et mémorables.
Par exemple, au lieu de courir git status
Chaque fois, vous pouvez construire un alias comme gs
ou tout autre raccourci basé sur votre préférence. Vous pouvez créer des alias temporairement pour votre session actuelle ou en permanence.
Pour créer un alias temporaire pour votre session actuelle, vous pouvez utiliser la commande Alias comme celle-ci:
alias gs="git status"
Maintenant, juste type gs
et Bash fonctionnera git status
pour toi. C’est aussi simple que cela. Vous pouvez ajouter autant d’alias que vous le souhaitez, mais la vraie magie se produit lorsque vous rendez ces alias permanents.
Ouvrez simplement votre fichier de configuration bash (généralement «~ / .bashrc» ou ~ / .bash_profile) avec votre éditeur préféré, comme Nano:
sudo nano ~/.bashrc
Ensuite, ajoutez vos commandes d’alias à la fin du fichier.
Enregistrez-le, redémarrez votre terminal ou exécutez:
sudo source ~/.bashrc
Maintenant, ils seront disponibles à chaque fois que vous ouvrez un terminal. De plus, j’ai des alias pour tout, en particulier pour les commandes de mise à jour et de mise à niveau:
alias update='sudo apt update && sudo apt upgrade -y'
Maintenant, au lieu de taper la commande complète, je tape juste update
et il fera le reste.
De plus, vous pouvez même créer des alias avec des paramètres à l’aide de fonctions:
mkcd() {
mkdir -p "$1" && cd "$1"
}
Maintenant, mkcd projects/new-app
Crée le répertoire et s’y saute instantanément. Assurez-vous simplement d’éviter d’écraser les commandes intégrées, ou vous finirez par vous confondre.
2. Recherchez instantanément dans votre historique de commandement
Parcourir votre historique terminal avec la flèche UP peut prendre une éternité. Vous savez que la commande est là-dedans, mais y arriver signifie appuyer sur la touche encore et encore. Heureusement, Bash a une recherche intégrée qui le rend sans effort.

Juste presser Ctrl + R dans votre terminal. Votre invite changera et vous pouvez commencer à taper n’importe quelle partie de la commande que vous recherchez. Lorsque vous tapez, Bash montre instantanément le match le plus récent de votre histoire.
Alternativement, collez cet extrait dans votre fichier «~ / .inputrc» (s’il n’existe pas, créez-le):
"e(A": history-search-backward
"e(B": history-search-forward
set show-all-if-ambiguous on
set completion-ignore-case on
Recharger votre terminal. Vous pouvez maintenant taper quelques caractères et utiliser le En haut/ /Vers le bas Arrow pour rechercher l’historique de bash les commandes qui commencent par le caractère typé. Par exemple, si vous tapez cd /
Et appuyez sur le bouton de flèche vers le haut, il recherchera votre historique des commandes qui commencent par cd /
.
3. Les commandes de la chaîne ensemble à l’aide de pipelines et de redirection
Une autre grande capacité de bash est que vous pouvez enchaîner les commandes ensemble. Au lieu d’exécuter les commandes une par un, vous pouvez les connecter, de sorte que la sortie de l’une devient l’entrée d’un autre. Vous pouvez le faire avec l’opérateur de pipeline (|).
Par exemple, si vous souhaitez ne voir que des processus en cours d’exécution liés à Python, vous n’avez pas besoin d’utiliser deux commandes distinctes. Au lieu de cela, vous pouvez les enchaîner ensemble comme ceci:
ps aux | grep python

Ici, ps aux
répertorie tous les processus en cours d’exécution, et grep
Python filtre la liste pour afficher uniquement celles liées à Python. De plus, vous pouvez continuer à chaîner plus de deux commandes pour construire des doublures rapides, comme ceci:
cat logfile.txt | grep "error" | wc -l
Cela compte combien de lignes d’erreur apparaissent dans un fichier journal – trois commandes fonctionnant ensemble de manière transparente.
La redirection est un autre outil essentiel. Au lieu d’imprimer la sortie sur votre écran, vous pouvez l’envoyer à un fichier. Par exemple, disons que vous souhaitez enregistrer la liste du répertoire dans un fichier. Vous pouvez le faire avec:
ls -l > files.txt
Vous pouvez également utiliser >>
au lieu de >
Si vous souhaitez ajouter au lieu de remplacer. La redirection est particulièrement utile pour les journaux, les sauvegardes ou chaque fois que vous souhaitez enregistrer des résultats pour plus tard.
4. Envoyez toute commande en cours d’exécution à l’arrière-plan
Vous venez de lancer quelque chose qui va prendre une éternité, comme un grand transfert de fichiers ou un long travail, et votre terminal est maintenant coincé. Au lieu d’ouvrir une nouvelle fenêtre, vous pouvez la pousser sur l’arrière-plan.
Par exemple. Si quelque chose fonctionne déjà, appuyez Ctrl + Z. Cela le suspend et vous renvoie à l’invite de shell. Puis tapez:
bg
Cela le reprend en arrière-plan, donc ça continue pendant que vous faites d’autres choses. Cependant, si vous souhaitez voir quels travaux sont en cours d’exécution ou en suspension, utilisez simplement ceci:
jobs
Vous pouvez également en ramener un au premier plan avec ceci:
fg %1
Utilisez le numéro du travail; Si vous le laissez de côté, fg
choisit le plus récent. De plus, vous pouvez également démarrer une commande en arrière-plan depuis le début en ajoutant &
comme ça:
some_long_task &
De cette façon, il commence à détacher et vous obtenez votre invite immédiatement. Une autre astuce: si vous craignez que le travail soit tué lorsque vous fermerez le terminal, vous pouvez courir:
disown -h %job
Cette commande bash envoie un code «ne pas suspendre» (sighup) à ce travail lorsque votre shell sort. Ou utilisez NoHup au début, n’oubliez pas: les travaux d’arrière-plan peuvent toujours écrire la sortie sur votre écran, et toutes les commandes ne sont pas comme le fait d’être fondaient. Utilisez la redirection ou le noHup en cas de besoin.
5. Re-Rerr la commande précédente avec les privilèges racine (sudo !!)
C’est celui qui est vraiment utile dans un scénario spécifique qui m’arrive beaucoup. !!
(Bang-bang) réduira en entier la commande précédente. Cela peut ne pas sembler utile, mais si vous pensez à toutes les fois où vous tapez une commande qui doit être exécutée sous des privilèges de super utilisateur, vous commencerez à comprendre où cela est utile.
Un excellent exemple consiste à installer des scripts. Disons que vous exécutez un script d’installation avec «./script-name.sh», et il dit que vous devez l’exécuter avec des privilèges de superutilisateur. Just Type sudo !!
entrez votre mot de passe et vous êtes parti pour les courses. Il économise beaucoup de temps, et une fois que vous aurez obtenu cette séquence dans votre mémoire musculaire, vous pourrez le faire plus rapidement que lorsque vous le faisiez mal.

6. Exécutez plusieurs commandes simultanément
Parfois, vous ne voulez pas vous asseoir en tapant une commande à la fois. Bash vous permet de les enchaîner ensemble pour qu’ils courent l’un après l’autre sans que vous ayez à attendre. Si vous voulez juste qu’ils s’exécutent tous en séquence quoi qu’il arrive, vous pouvez séparer les commandes avec un point-virgule (;
), comme ça:
mkdir newdir; cd newdir; touch file.txt
Si vous voulez que la deuxième commande s’exécute lorsque la première réussit, utilisez &&
comme ça:
sudo apt update && sudo apt upgrade
D’un autre côté, vous pouvez utiliser ||
Pour exécuter quelque chose uniquement si la première commande échoue:
backup_database || echo "Backup failed!"
Vous n’êtes pas non plus limité aux commandes séquentielles. Ajoutez un ampère et à la fin et la commande s’exécute en arrière-plan et libérant votre terminal. Par exemple, vous pouvez ouvrir plusieurs applications directement à partir de votre terminal de diverses manières:
python script.py & firefox &
Cela exécute votre script Python et ouvre Firefox en même temps. De plus, une fois que vous serez à l’aise avec le chaînage, les travaux d’arrière-plan et un peu de substitution de processus, vous cesserez de penser les commandes comme des étapes uniques et commencez à les traiter comme des blocs de construction, vous pouvez vous réunir dans des flux de travail plus importants.
7. Trouver des commandes avec APROPOS
APROPOS (App-Row-Poe) est une commande qui vous permet de trouver des commandes avec man
ou des entrées manuelles en fonction de leur description. Si vous avez déjà trouvé une page d’homme d’une commande, cela ressemble un peu à ceci:

Cette section «nom» en haut est ce dont je parle. Si je voulais trouver le ping
commander avec apropos
Je taperais apropos icmp
dans mon terminal et appuyez sur Entrée. Notez que ce n’est pas sensible à la casse. Cela tire chaque commande avec une entrée de nom qui contient «ICMP».

Une autre grande utilité pour apropos
explore des outils que vous ne connaissez peut-être pas, comme selinux
. Émettant le apropos selinux
La commande vous donnera une liste de toutes les différentes commandes que vous pouvez utiliser pour interagir avec le Selinux, vous faisant démarrer sur la route pour faire respecter efficacement.
8. substituer dans la commande précédente
Quelque chose qui m’a fait gagner une tonne de temps dans le terminal consiste à comprendre comment remplacer quelque chose dans la commande précédente. Si je vais mal orthographier quelque chose ou si j’ai juste besoin de remplacer une option dans la commande précédente, je peux utiliser un ^
clé pour tirer le mot que j’ai mal orthographié, puis un autre ^
pour mettre le mot ou l’option que je voulais.
Regardons un exemple. Supposons que je souhaite cingler «maketecheasier.com» pour m’assurer d’avoir une connectivité Internet complète (y compris DNS). Mais si je mal orthographier quelque chose, je pourrais obtenir une sorte d’erreur. Donc, si je ping accidentellement Maktecheaser.com (manquant le «je»), j’aurai des problèmes.
Pour remplacer l’option mal orthographiée, je peux taper ^maktecheaser.com^maketecheasier.com
et la commande s’exécutera comme prévu. Ceci est un exemple simple, mais disons que vous exécutez une longue commande avec beaucoup d’options ou mal orienter la sortie ou les erreurs de votre commande. Être capable de substituer >
pour >>
Dans une commande complexe se trouve une bouée de sauvetage.

Un autre exemple est avec Systemd et le systemctl
commande. Je vais souvent émettre plusieurs différents systemctl
sous-communs, comme commencer, arrêter, activer ou désactiver un service. Je peux juste les soumettre avec ^start^enable
ce qui me fera gagner du temps.
9. Passer des arguments des commandes précédentes
En utilisant !$
nous pouvons transmettre le dernier argument d’une commande à la commande actuelle, et avec quelques variations légères, nous pouvons transmettre n’importe lequel des arguments à notre commande actuelle.
Regardons quelques exemples. Si je modifie un script, je peux utiliser la commande nano samplescript.sh
. Une fois que j’ai terminé ce script, je veux le rendre exécutable, donc je peux changer les autorisations octales en 755. Pour ce faire, je pourrais utiliser le chmod 755 !$
commande. Ensuite, pour retirer le nom du script, je pourrais utiliser ./!:2
pour extraire le deuxième argument.

Quelques autres exemples:
!^ - first argument
!* - all arguments
!:2-$ - second through last arguments
!:2-4 - second through fourth arguments
Vous pouvez remplacer vos chiffres pour tirer tous les arguments que vous souhaitez. Bash conservera près de 100 arguments à la pression avec cette méthode, et vous pouvez facilement travailler rapidement à travers certaines tâches subalternes comme celle-ci.
J’espère que vous avez apprécié ces conseils et astuces bash pour vous aider à travailler plus intelligent dans le terminal. Vous devez également en savoir plus sur les variables bash et les caractères spéciaux.