Hannah Stryker / Geek pratique
La ligne de commande Linux retrace son arbre généalogique depuis 1969, et c’est toujours le moyen le plus efficace d’effectuer certaines tâches. Assurez-vous simplement d’éviter ces erreurs courantes, si vous débutez.
Pourquoi utiliser la ligne de commande ?
La ligne de commande est apparue bien avant l’apparition des environnements de bureau graphiques. C’était le principal moyen d’utiliser et d’administrer Unix, le système d’exploitation sur lequel Linux est basé.
Il existe des centaines de commandes disponibles sur la ligne de commande Linux, et beaucoup d’entre elles ont des dizaines d’options. Cela offre granularité, puissance, vitesse et flexibilité. Le problème est que le curseur clignotant dans une fenêtre de terminal n’est pas accueillant, et la perspective d’apprendre toutes ces commandes et options peut être écrasante pour le nouveau venu.
C’est un peu un Attrape-22. L’utilisation de la ligne de commande est plus efficace, tant que vous maîtrisez la ligne de commande.
La bonne nouvelle est que vous pouvez réaliser presque tout via votre bureau que vous pouvez dans le terminal, même si c’est un peu plus lent. De nombreux utilisateurs n’utilisent jamais ou presque jamais la ligne de commande. D’un autre côté, si vous voulez profiter de ces avantages de vitesse et de puissance, vous devez mordre la balle et apprendre à utiliser la ligne de commande.
Suivre nos conseils peut vous éviter quelques pièges.
Un peu de terminologie
La ligne de commande est un moyen d’interagir avec un ordinateur en y tapant des instructions textuelles et en lisant les réponses.
Le logiciel, appelé interpréteur, qui traduit votre entrée en commandes et les exécute pour vous est le shell. Sur la plupart des distributions Linux, le shell par défaut est Frapperou Zsh.
Si votre installation Linux dispose d’un environnement de bureau graphique tel que GNOME ou KDEGenericName, vous devrez ouvrir une fenêtre de terminal pour accéder à la ligne de commande. Strictement parlant, ce sont des fenêtres d’émulation de terminal, mais presque personne ne prend la peine de les appeler ainsi.
À l’origine, un terminal était un téléscripteur qui utilisait un rouleau de papier pour afficher ce que vous tapiez et imprimer la réponse de l’ordinateur. Ceux-ci ont été remplacés par des terminaux à tube cathodique (CRT) qui supprimaient le papier. Votre fenêtre de terminal prétend être l’un de ces terminaux CRT à l’ancienne. À l’intérieur du terminal, il y a le shell, et le shell fournit la ligne de commande.
Tout ce dont vous devez vous souvenir, c’est que si quelqu’un vous dit de taper quelque chose sur la ligne de commande, ou d’exécuter une commande shell, ou de taper quelque chose dans une fenêtre de terminal, ils signifient tous la même chose.
Ouvrez une fenêtre de terminal et tapez à l’invite de commande.
1. Ne vous attendez pas à de la cohérence
La plupart des commandes acceptent des options de ligne de commande ou des indicateurs qui modifient leur comportement. Mais ne vous attendez pas à ce qu’une option signifie la même chose d’une commande à l’autre. Par exemple, avec grep
le -i
option signifie ignorer la casse. Mais à ls
cela signifie afficher le inode
numéro de chaque fichier listé.
man ls
Au moment d’écrire ces lignes, Linux a plus de 30 ans et Unix est dans la mi-cinquantaine. Les choses ont évolué au fil des années. En plus de deux outils utilisant différemment la même option de ligne de commande, vous pouvez trouver différentes versions du même outil qui ont des fonctionnalités et des options différentes.
Si vous constatez des comportements différents lorsque vous utilisez la même commande sur différents ordinateurs, vérifiez la version logicielle de l’outil. Une option presque universelle est la --version
drapeau. Cela indique à l’outil d’imprimer son numéro de version dans la fenêtre du terminal.
grep --version
Rechercher les options d’un outil peut sembler être un travail pour Internet. Le problème est que les informations que vous trouvez peuvent concerner n’importe quel millésime de l’outil. Le man
l’exactitude des pages sur votre ordinateur est garantie. Ils correspondront exactement aux versions des outils et des commandes installées sur votre ordinateur.
Traditionnellement, man
les pages sont conçues pour être succinctes, sans réelle concession à la convivialité. Lecture et interprétation man
pages est une compétence en soi. Mais, si vous avez l’intention de vous attarder à la ligne de commande, vous devez commencer à développer le plus tôt possible.
La validité des ressources en ligne change avec le temps. Malheureusement, les articles sur Internet n’ont pas de date d’expiration. Si vous suivez un didacticiel en ligne, vérifiez la date à laquelle il a été publié.
Vérifiez également pour quelle distribution Linux et quelle version il a été écrit. Par exemple, la plupart des distributions modernes utilisent systemd
maintenant, donc après un tutoriel qui décrit son prédécesseur, le Système V init
démon, est inutile.
2. Ne croyez pas tout ce que vous lisez
Même si les informations en ligne sont toujours d’actualité, elles peuvent être factuellement incorrectes. Si vous recherchez de l’aide sur des sites Web réputés, vous aurez plus de chances d’obtenir des informations de qualité. Recherchez des articles avec des explications, pas seulement des instructions. Les captures d’écran étape par étape sont un bon signe. Cela signifie que le processus a été suivi par l’auteur et que cela a fonctionné. En cas de doute, croisez les informations avec un autre site réputé.
Les méchants posent des pièges par copier-coller aux imprudents. Ils veulent que les nouveaux arrivants utilisent des commandes destructrices qui suppriment des données ou bloquent votre système. Si on vous propose une commande qui fait prétendument ce que vous voulez, mais que vous ne savez pas comment cela fonctionne, déposez-la dans l’analyseur de commandes à ExpliquerShell.com.
Le site Web décompose la commande pour vous et explique ce que fait chaque pièce. Au lieu de copier et coller une ligne impénétrable dans la fenêtre de votre terminal et d’espérer le meilleur, prenez la décision sensée d’avoir cette commande analysée et expliquée.
Bien sûr, ce ne sont pas seulement les commandes malveillantes auxquelles vous devez faire attention. Des commandes innocentes émises dans le mauvais ordre, ou une séquence de commandes qui manquent accidentellement une étape, peuvent également faire des ravages sur votre ordinateur.
Cela peut être aussi anodin que d’oublier une étape vous disant de cd
retour à votre répertoire personnel. Les commandes suivantes seront exécutées au mauvais endroit dans le système de fichiers. Le mieux que vous puissiez espérer, c’est qu’ils ne fonctionnent pas et que vous voyez des messages d’erreur, mais vous êtes tout aussi susceptible de faire quelque chose que vous regretterez.
3. Ne vous connectez pas en tant que root
Que vous en ayez marre d’entrer sudo
ou non, se connecter en tant que root n’est jamais une bonne idée. Tout le but de sudo
est d’empêcher cela. Cela signifie que vous n’obtenez les privilèges spéciaux de root que pendant la durée dont vous en avez besoin, et pas plus. Quel que soit le degré de dégâts que vous pouvez causer en tant qu’utilisateur régulier, ce n’est rien comparé à ce que peut faire une distraction momentanée en tant que root.
Vous pourriez penser que vous êtes assez prudent pour ne pas faire d’erreur, mais l’erreur n’est peut-être pas la vôtre. S’il y a une erreur dans un script ou un programme que vous utilisez, les dommages qu’il peut causer lorsqu’il est lancé par root sont illimités. root peut tout faire sur le système, tout comme les processus lancés par root.
Et si vous vous éloignez de votre ordinateur pendant un moment et que vous n’appuyez pas sur « Super + L » pour verrouiller votre bureau, toute personne assise devant votre clavier a un accès root à votre ordinateur.
Connexion en tant que root ? Dis juste non.
4. Ne luttez pas – Travaillez plus intelligemment, pas plus dur
Les commandes que vous tapez doivent être parfaites. Les fautes de frappe peuvent provoquer des événements inattendus. Par exemple, si vous voulez taper ln
mais tapez nl
c’est nl
qui fonctionne, que cela ait un sens ou non.
Bien sûr, vous avez besoin du nom connu de la commande avant de pouvoir la saisir. Heureusement, vous n’avez pas besoin de les porter tous dans votre tête.
Si vous savez ce que vous voulez faire mais que vous ne vous souvenez pas de la commande dont vous avez besoin, utilisez apropos
. Dactylographie apropos
suivi de ce qui vous intéresse, comme « impression » ou « connexion à distance », répertorie toutes les commandes associées à ce sujet.
apropos printing
Vous pouvez diriger la sortie via grep
pour filtrer les résultats, ou dans less
pour les faire défiler et les rechercher. Pour voir comment utiliser une commande particulière, utilisez man
pour ouvrir son man
ou utilisez la --help
option de ligne de commande.
man lp
lp --help
Utiliser des alias et des fonctions Shell
Créez des alias ou des fonctions shell pour les séquences de commandes couramment utilisées ou peu maniables. Donnez-leur des noms mémorables et significatifs, afin qu’ils soient faciles à retenir. Vous économiserez sur les frappes et éviterez de rechercher la syntaxe de commande et les options de ligne de commande.
Utiliser la fonctionnalité d’historique du shell
Si vous avez utilisé une commande, elle sera stockée dans l’historique de votre shell pour être réutilisée. Vous pouvez faire défiler dans votre historique à l’aide des touches Flèche haut et Flèche bas. Appuyer sur Entrée exécute la commande actuellement affichée.
Rechercher dans l’historique
Vous pouvez également effectuer une recherche dans votre historique à l’aide de la combinaison de touches Ctrl+R. Tapez les premières lettres d’une commande et appuyez sur Ctrl+R. Si vous avez utilisé une commande qui correspond à votre indice de recherche, elle s’affichera. Si ce n’est pas la commande que vous recherchez (c’est peut-être la bonne commande mais les mauvais paramètres), appuyez sur la combinaison de touches Ctrl+R pour passer à la correspondance suivante.
Appuyer sur Entrée exécute la commande affichée. Pour placer la commande sur la ligne de commande afin de pouvoir la modifier, appuyez sur les touches Flèche gauche ou Flèche droite.
5. N’utilisez pas un éditeur difficile
Prise à chaud : ignorer vigueur et emacs, au moins pour l’instant. Vous avez assez à apprendre sans avoir à maîtriser l’un ou l’autre de ces puissants éditeurs en même temps.
Facilitez-vous la vie et utilisez un éditeur simple qui se comporte comme vous vous y attendez et ne prend que quelques minutes à comprendre. Ensuite, vous pouvez vous concentrer sur ce que vous modifiez, au lieu de lutter avec l’éditeur.
Vous n’aurez aucun problème à utiliser soit nano ou micro. Ce sont d’excellents petits éditeurs, et ils travaillent dans une fenêtre de terminal. Des deux, micro
est le plus simple et a plus de fonctionnalités que nano
. Il utilise des raccourcis clavier familiers comme « Ctrl + s » pour enregistrer et « Ctrl + q » pour quitter.
D’autre part, nano
est susceptible d’être préinstallé pour vous.
6. Ne vous contentez pas de mauvaises solutions de contournement
Si vous ne pouvez pas faire fonctionner quelque chose, persévérez et trouvez la bonne solution. Ne mettez pas en place une solution de contournement maladroite juste pour obtenir le résultat dont vous avez besoin. Cela peut entraîner des failles de sécurité ou des instabilités du système.
Un bon exemple de mauvaise pratique consiste à définir les autorisations pour des répertoires entiers sur 777 juste pour que quelque chose s’exécute. Cela peut sembler être une solution lorsque vous êtes frustré et que vous manquez de temps, mais vous devez vraiment déterminer les autorisations dont vous avez besoin et faire le travail correctement.
Définir des répertoires et des fichiers pour avoir des autorisations avec l’indicateur 777 signifie que n’importe qui sur l’ordinateur peut lire, écrire et exécuter ces fichiers, et créer et supprimer des fichiers dans les répertoires.
Ce n’est pas si difficile
Apprendre la ligne de commande ne signifie pas apprendre chaque option pour chaque commande.
C’est un peu comme apprendre à conduire. Vous n’apprenez pas le tracé des routes de chaque endroit de votre pays. Vous apprenez les règles de la route et comment manœuvrer et contrôler votre véhicule. Vous appliquez ces principes lorsque vous conduisez quelque part de nouveau.
Une fois que vous vous êtes souvenu de vos commandes de terminal couramment utilisées et de ce qu’il faut faire et ne pas faire, vous appliquez ces principes à toutes les autres commandes. Vous devez découvrir la commande dont vous avez besoin, sélectionner les options appropriées et vous assurer de la saisir correctement. Ou laissez le shell faire une partie du travail pour vous, en utilisant des alias, des fonctions et en recherchant votre historique de commandes.