cClaude.rocks ☕ Le blog

[Nouvelles technologies, sciences et coups de gueule…]

Menu

Ce blog propose la plupart des solutions au format ligne de commande. D’autres noms peuvent ĂȘtre utilisĂ©s : « terminal », « shell », « console », « bash », « invite de commande » (pour les personnes familiĂšres avec Windows).

La plupart des gens en sont effrayĂ©s pour une raison ou une autre par ce type d’interaction avec les ordinateurs. Voici didacticiel tentera de vous fournir les commandes les plus Ă©lĂ©mentaires dĂ©placer dans votre ordinateur ainsi que les actions systĂšme de base pour ĂȘtre un peu plus confortable lorsque vous parler Ă  votre ordinateur avec votre clavier.

L’avantage de configurer votre ordinateur en ligne de commande est que cela est automatisable et reproductible (de maniùre fidùle).

La façon d’accĂ©der au terminal peut-ĂȘtre diffĂ©rent en fonction de votre distribution, voir mĂȘme de sa version. Mais gĂ©nĂ©ralement il est immĂ©diatement accessible depuis le menu (pas besoin de chercher dans des sous-menus).

La combinaison de touche CTRL+ALT+T est permet gĂ©nĂ©ralement d’y accĂ©der.


ඏ

Quelques éléments à savoir

  • Vous pouvez faire presque n’importe quoi dans un terminal, tout ce vous pouvez faire Ă  partir d’une interface graphique est accessible depuis la ligne de commande, au moins tant qu’il s’agit d’interagir avec le systĂšme.
  • La plupart des commandes ont d’abord Ă©tĂ© conçues pour fonctionner dans le terminal, puis une interface graphique leur a Ă©tĂ© ajoutĂ©e. C’est pourquoi certaines interfaces graphiques peuvent sembler maladroites – elles ont parfois Ă©tĂ© prises en compte aprĂšs coup.
  • L’emplacement par dĂ©faut ou s’ouvre votre terminal est votre dossier personnel, Ă©galement appelĂ© ~
  • Votre rĂ©pertoire actuel peut ĂȘtre notĂ© par l’opĂ©rateur .. La plupart des commandes, lorsqu’elles agissent sur la sĂ©lection de dossier en cours, fonctionnent depuis le rĂ©pertoire courant.
  • Les commandes, les emplacements et les fichiers sont sensibles Ă  la casse (majuscules/minuscules). /home n’est pas la mĂȘme chose que /HOME ou que /Home.
  • La touche de tabulation permet de complĂ©ter les noms de fichiers (et parfois les paramĂštres de certaines commandes). Si vous avez un fichier avec nom long, par exemple, driver-128947232jaseu.sh, tapez simplement dri suivi de la touche de tabulation, cela remplira le reste, Ă  condition que vous n’ayez pas 2 noms commençant par dri et si vous en avez, ajoutez un autre caractĂšre pour le rendre driv et rĂ©essayez.
  • Presque toutes les documentations des commandes peuvent ĂȘtre lues dans leur intĂ©gralitĂ© Ă  l’aide de la page de manuel ou en tapant -h ou --help aprĂšs avoir Ă©crit la commande initiale. Cette syntaxe est soit man nom_commande, nom_commande -h ou nom_commande --help.
  • Pour obtenir encore plus d’informations, vous pouvez utiliser info. Une commande peut ĂȘtre recherchĂ©e en utilisant info command_name. Pour la plupart de ces commandes qui font partie du package coreutils, on peut Ă©galement trouver des informations en utilisant info coreutils command_name, invocation oĂč command_name est Ă  remplacer par la commande recherchĂ©e.

Vous pouvez commencer par:

info coreutils
  • Presque toutes les commandes peuvent Ă©galement afficher explicitement ce qui se passe. Cela se fait gĂ©nĂ©ralement Ă  l’aide du paramĂštre -v ou --verbose.
  • Vous pouvez spĂ©cifier plusieurs indicateurs de commande Ă  une commande Ă  la fois pour obtenir plus d’informations, exemple : ls -al ou ls -la.
  • Les noms de commande ne sont pas toujours obtus – en raison des limitations d’espace dans l’ancien temps d’Unix, ils ont Ă©tĂ© raccourcis et les conventions sont restĂ©es.

ඏ

Les commandes essentielles :

cd (Change Directory) — Naviguer dans les rĂ©pertoires.

Vous pouvez vous dĂ©placer Ă  n’importe quel endroit de votre disque dur en utilisant le chemin depuis la position actuelle.

  • cd – Cela vous ramĂšnera chez vous, tout comme cd ~
  • cd .. – Cela vous ramĂšnera exactement dans un rĂ©pertoire. À partir de /home/justin/Desktop, cd .. me mettra dans /home/justin. Cela peut ĂȘtre Ă©tendu, cd ../../ Ă  partir de l’emplacement du bureau Ă  la place me fera reculer de 2, de mon bureau Ă  /home.
  • cd nom_dossier/ – Cela vous amĂšnera au dossier donnĂ© dans votre dossier actuel. Prenez note du prĂ©fixe manquant / c’est une omission importante. Si je suis dans /home/justin et que je veux accĂ©der Ă  Desktop, je dois taper cd Desktop/ sans le / avant Desktop. Taper / avant de nous placer Ă  la racine du systĂšme de fichiers, ce qui est incorrect.
  • cd /some/other/path – Cela vous mĂšnera au chemin du dossier spĂ©cifiĂ©, en supposant qu’il existe exactement tel qu’il a Ă©tĂ© saisi. N’oubliez pas l’achĂšvement de votre onglet !

ls (LiSt) — Lister le contenu du dossier.

Vous pouvez afficher de nombreux types d’attributs de fichiers et de dossiers.

  • ls – Par lui-mĂȘme, ls listera simplement tous vos fichiers dans le dossier actuel.
  • ls -l – Fournit un format de liste plus long comprenant les propriĂ©taires, les autorisations, la taille et la date de modification.
  • ls -a – Affiche les fichiers et dossiers cachĂ©s ainsi que la liste normale (sous Linux, les Ă©lĂ©ments cachĂ©s ont leur nom qui commence par le caractĂšre point).
  • ls -al – Combine les options pour afficher Ă  la fois les fichiers cachĂ©s et au format long.
  • ls -h – Afficher les tailles de fichier au format lisible par l’homme (K, M, Go) au lieu d’octets. Souvent utilisĂ© en conjonction avec le drapeau -l.

Vous pouvez afficher les fichiers dans des rĂ©pertoires dans lesquels vous n’ĂȘtes mĂȘme pas. Si je suis dans /home/justin/Desktop et que je veux afficher un fichier dans /home/justin, je peux faire ls ../ lister les fichiers dans un rĂ©pertoire (et pas besoin de revenir en arriĂšre pour le faire.)

cp (CoPy) — Copier des fichiers

  • cp file /path/to/folder – Copie le fichier spĂ©cifiĂ© dans le chemin donnĂ©.
  • cp -r dossier /chemin/vers/dossier – Copie rĂ©cursivement le contenu du dossier vers un autre dossier.
  • cp *.extension /path/to/folder – Copie les fichiers correspondant Ă  l’extension donnĂ©e dans le nouveau dossier. Pour copier tous les fichiers .pdf, il devient cp *.pdf /path/to/folder et le dossier doit exister (On rappelle que Linux est sensible Ă  la casse).
  • cp nom* /chemin/vers/dossier – Copie tous les fichiers commençant par nom dans le dossier donnĂ©. Pour copier tous les fichiers commençant par example, il devient cp example* /path/to/folder et le dossier doit exister.

mv (MoVe) — DĂ©placer des fichiers

La syntaxe de mv est similaire Ă  l’exemple ci-dessus avec cp exemp + <TAB> par exemple. Notez que mv ne supporte pas le paramĂštre -r, car le dĂ©placement d’un dossier dĂ©place Ă©galement son contenu. La syntaxe n’est pas exactement la mĂȘme pour des cas particuliers : Consultez vos pages de manuel pour plus de dĂ©tails.

rm (ReMove) — Supprimer des fichiers

À toutes fins utiles, la suppression de fichiers via rm est permanente. Cette commande n’utilise pas la corbeille.

Utilisez rm avec prudence et assurez-vous de supprimer explicitement ce que vous voulez, et non ce que vous pensez vouloir. Si vous dĂ©cidez d’ĂȘtre fantaisiste avec la commande de suppression, vous le regrettez rapidement.

  • rm fichier – Supprime le fichier spĂ©cifiĂ© du systĂšme .
  • rm -r dossier – Supprimer le dossier spĂ©cifiĂ© du systĂšme
  • rm -rf dossier – Supprime de force le dossier spĂ©cifiĂ© du systĂšme. Cette commande peut gravement endommager votre configuration si elle n’est pas utilisĂ©e correctement, car elle ne vous avertira pas si quelque chose de critique est en cours de suppression. Soyez trĂšs vigilant avec cette commande.

nano — Éditeur de texte complet en ligne de commande

On peut Ă©diter des fichiers en utilisant nano dans un terminal pour faire des fichiers rapides et sales jusqu’aux configurations complĂštes. C’est pratique, mais gardez Ă  l’esprit qu’il gĂšre les fichiers texte brut et les fichiers de programmation, des choses comme les documents PDF ne s’ouvriront pas correctement !

Si un fichier appartenant Ă  l’utilisateur root (administrateur), il n’est pas modifiable en tant qu’utilisateur normal. nano doit ĂȘtre prĂ©fixĂ© par sudo afin d’enregistrer les modifications. Sinon, il s’ouvrira en mode lecture seule.

  • nano nouveau_fichier – L’éditeur crĂ©e un nouveau fichier du nom spĂ©cifiĂ© et l’ouvre pour le modifier.
  • nano fichier_existant – L’éditeur ouvre le fichier existant pour le modifier.

De l’intĂ©rieur nano

  • Enregistrez le fichier Ă  l’aide de la combinaison de touches CTRL+o et modifiez le nom ou appuyez sur entier pour conserver le mĂȘme nom. Cela enregistrera le fichier.
  • Quittez nanoen utilisant la combinaison de touches CTRL+x. Si vous avez des modifications non enregistrĂ©es, il vous demandera si vous souhaitez enregistrer.

mkdir (MaKe Directory) — CrĂ©er des rĂ©pertoires

  • mkdir nom_dossier – CrĂ©e le dossier avec le nom spĂ©cifiĂ©
  • mkdir -p /path/to/folder/name – CrĂ©e chaque dossier selon les besoins. Pour crĂ©er le dossier /home/justin/nouveaudossier/2nddossier, et que seul /home/justin existe, l’utilisation de mkdir -p crĂ©era les deux rĂ©pertoires newfolder et 2ndfolder.

ps (ProceseS) — Lister les processus

  • ps aux – RĂ©pertorier en dĂ©tail tous les processus en cours d’exĂ©cution sur le systĂšme, y compris l’utilisateur, l’ID de processus (PID) et le nom du processus. En utilisant cela, on peut voir leur liste de processus et, si nĂ©cessaire, tuer les processus inutiles ou bloquĂ©s.

kill / killall / xkill — Tuer/arrĂȘter des processus.

  • kill PID – PID est un numĂ©ro faisant rĂ©fĂ©rence au processus incriminĂ©. On devrait obtenir le PID Ă  partir d’une commande comme ps aux. Si un processus refuse de mourir, on peut Ă©galement spĂ©cifier kill -9 PID qui devrait terminer le processus par n’importe quel moyen, mĂȘme de maniĂšre sale ou s’il devrait faire « perdre » une partie de la mĂ©moire disponible du systĂšme.
  • killall PROGRAMME – killall tue par leur nom toutes les instances dudit programme. S’il y a par exemple 3 sessions firefox ouvertes, killall firefox fera exactement cela ; tue toutes les sessions firefox. killprendrait simplement le PID spĂ©cifiĂ© du processus firefox incriminĂ© que vous souhaitez tuer, et ne tuerait que celui-lĂ .
  • xkill est un moyen graphique de cliquer et de tuer des fenĂȘtres. Taper xkill devrait prĂ©senter une icĂŽne en forme de tĂȘte de mort et la prochaine fenĂȘtre sur laquelle vous cliquerez sera tuĂ©e.

Les « pipes » |

La chose la plus utile que vous apprendrez dans *NIX. Rediriger la sortie d’un programme vers une autre entrĂ©e.

  • Les tuyaux/tubes sont reprĂ©sentĂ©s par la « barre droite » le caractĂšre |.
  • Ils sont utilisĂ©s pour lier des commandes entre elles. Cela permet de brancher la sortie d’une commande (son rĂ©sultat) et sur l’entrĂ©e d’une autre.

Les « redirecteurs » : > et >>

Envoyer la sortie vers un fichier au lieu du terminal.

  • > est utilisĂ© pour Ă©craser le contenu des fichiers actuellement existants et le remplacer par la sortie de la nouvelle commande.
  • >> est utilisĂ© pour ajouter des informations aux fichiers actuellement existants. Ceci est utile pour la journalisation (« log » ou « traces »).

Exemple :

ps aux > process.log – Envoie la sortie de ps dans le fichier process.log. Cette mĂ©thode Ă©crase, le cas Ă©chĂ©ant, contenu du fichier. Vous pourrez afficher la sortie de la commande dans un Ă©diteur de texte de votre choix par la suite.

tee

Envoyer la sortie Ă  la fois vers un fichier et vers le terminal (la sortie standard).

  • tee est utilisĂ© conjointement avec un ' | ' afin de prendre la sortie de la commande et de l’envoyer ailleurs. Ceci est utile s’il y a des erreurs qui dĂ©filent Ă  l’écran avant que vous ne puissiez les lire, de cette façon tout ce qui se passe Ă  l’écran est Ă©galement capturĂ© dans un fichier.

Exemple :

dmesg | tee boot.txt exĂ©cute la commande dmesg qui affiche les informations de dĂ©marrage initiales, et le ' | ' envoie la sortie de dmesg Ă  tee, qui fait ensuite son travail en l’envoyant au terminal et au fichier boot.txt.

Exécution de fichiers

Vous souhaitez donc exĂ©cuter des fichiers ou des programmes depuis le terminal ? Assurez-vous qu’il est marquĂ© comme exĂ©cutable (voir les astuces ci-dessous).

  • Si vous devez exĂ©cuter un fichier dans le rĂ©pertoire courant aprĂšs qu’il ait Ă©tĂ© marquĂ© comme exĂ©cutable ? L’opĂ©rateur ./ peut exĂ©cuter le fichier en tant qu’utilisateur normal Ă  condition que vous n’ayez pas besoin des droits root. ./ signifie littĂ©ralement « dans le rĂ©pertoire courant » donc cela ne fonctionne pas sur les fichiers en dehors du rĂ©pertoire actuel.
  • Si vous devez exĂ©cuter un fichier qui n’est pas dans le rĂ©pertoire courant ? Vous devez transmettre le chemin d’accĂšs au programme d’exĂ©cution appropriĂ©. S’il s’agit d’un programme python, c’est python /path/to/file et s’il s’agit d’un fichier shell, c’est sh /path/to/file par exemple. Il existe bien sĂ»r d’autres programmes, mais ceux-ci seront les plus courants pour les dĂ©butants.
  • Besoin d’exĂ©cuter un fichier avec les droits root car vous avez reçu une opĂ©ration non autorisĂ©e ? PrĂ©fixez la commande avec sudo. Ainsi, Ă  partir de l’exemple ci-dessus, sudo python /path/to/file exĂ©cutera le script avec les droits root.
  • Si vous devez exĂ©cuter un programme avec une interface graphique (« GUI ») depuis le terminal ? Tapez simplement le nom du programme (sensible Ă  la casse !) et il se lancera. Cela rendra le terminal actuel inutilisable jusqu’à la fermeture de ce programme. La fermeture du terminal alors que le programme est encore en cours d’exĂ©cution tuera (arrĂȘt violent) le programme. Une meilleure façon est de mettre le programme en arriĂšre-plan, en utilisant nom_programme & puis en tapant le mot exit sur le terminal pour le fermer (ou pas) et maintenir le processus en cours d’exĂ©cution.
  • Attention l’utilisation des droits root pour lancer un programme graphique est une mauvaise idĂ©e et doit ĂȘtre Ă©vitĂ©. Les programmes nĂ©cessitant des droits particuliers prennent gĂ©nĂ©ralement cela en compte et vous demanderont le mot de passe ultĂ©rieurement.
  • N’utilisez pas sudo simplement parce que vous avez un message indiquant que l’opĂ©ration n’est pas autorisĂ©e. Gardez Ă  l’esprit ce que vous faites, car vous pouvez absolument dĂ©truire le systĂšme en exĂ©cutant des commandes au mauvais endroit avec les droits root.
  • Assurez-vous que vos fichiers proviennent de sources fiables, particuliĂšrement si vous devez les exĂ©cuter avec les droits administrateurs (root,sudo).

ඏ

Astuces rapides

  • Vous ĂȘtes perdu dans un dossier ? Vous ne savez pas oĂč vous ĂȘtes ? Tapez pwd pour afficher le rĂ©pertoire de courant (ou rĂ©pertoire travail).
  • Vous souhaitez calculer rapidement votre espace disque ? df -h peut vous donner un contrĂŽle rapide.
  • Vous souhaitez calculer rapidement la taille d’un dossier ou d’un fichier ? du -cksh nom_cible peut faire exactement cela. Vous voulez calculer la taille du dossier actuel ? du -cksh.
  • Besoin de marquer un fichier exĂ©cutable ? chmod +x nom de fichier peut le faire. La prochaine fois que vous voyez un fichier que vous devez exĂ©cuter et qu’il n’est pas marquĂ© comme exĂ©cutable, vous savez maintenant comment le rĂ©parer.
  • Vous voulez monter un ISO (une image ISO) comme Daemon-Tools sous Windows ? C’est en fait le mode de fonctionnement naturel (natif) de Linux. CrĂ©ez simplement un rĂ©pertoire quelque part, disons /home/justin/isomount, et lancez la commande mount -o loop /path/to/myisofile.iso /home/justin/isomount et le contenu sera montĂ© Ă  l’intĂ©rieur ce dossier (le contenu de l’image sera accessible depuis ce dossier).
  • ExĂ©cutez une commande avant, vous devez la relancer, mais vous ne vous souvenez plus vraiment de quoi il s’agissait exactement ? Tapez history dans le terminal et il affichera l’historique de vos commandes. Vous voulez effacer votre historique ? history -c effacera les informations.

ඏ

Liens

኿


â„č 2006 - 2022 | 🏠 Accueil du domaine | 🏡 Accueil du blog