5.7 KiB
[ Langues: English, Español, Français, Italiano, 日本語, 한국어, Português, Русский, Slovenščina, Українська, 中文 ]
L'art de la ligne de commande
- Meta
- Notions de base
- Utilisation quotidienne
- Traitement des fichiers et des données
- Débogage du système
- Unilignes
- Obscures mais utiles
- Uniquement OS X
- Ressources supplémentaires
- Avertissement
La maîtrise de la ligne de commande est une compétence souvent négligée ou considérée ésotérique, pourtant elle améliore de façon évidente et subtile votre habilité et votre productivité en tant qu'ingénieur. Ceci est une sélection de notes et d'astuces sur l'utilisation de la ligne de commande que nous avons trouvées utiles en travaillant avec Linux. Certaines sont élémentaires, d'autres sont assez spécifiques, complexes ou obscures. Cette page n'est pas bien longue, mais si vous pouvez retenir et vous servir de tout ce qui se trouve dans ce document, alors vous saurez beaucoup de choses.
Ce document est le fruit du travail de nombreux auteurs et de traducteurs. Une bonne partie a été publiée à l'origine sur Quora, mais compte tenu de l'intérêt qu'il a suscité, il nous a paru bon de le mettre sur GitHub, où des personnes plus compétentes que l'auteur originel pourraient facilement proposer des améliorations. Si vous voyez une erreur ou quelque chose à améliorer, veuillez remplir un ticket ou soumettre un pull request ! (Bien sûr, veuillez d'abord consulter la section Méta ainsi que les pull requests et tickets actifs.)
Uniquement OS X
Ce qui suit ne s'applique *qu'*à Mac OS.
-
Gestion des paquets avec
brew
(Homebrew) ouport
(MacPorts). Ceux-ci peuvent être utilisés pour installer sur Mac OS la plupart des commandes mentionnées ci-dessous. -
Copier la sortie de n'importe quelle commande dans une application de bureau avec
pbcopy
et coller l'entrée d'une commande avecpbpaste
. -
Pour permettre à la touche Option de fonctionner comme la touche Alt dans le terminal de Mac OS (comme dans les commandes alt-b, alt-f, etc), allez dans Préférences -> Profils -> Clavier et sélectionner « Choisir la touche Option comme touche virtuelle ».
-
Pour ouvrir un fichier avec une application de bureau, utilisez
open
ouopen -a /Applications/Whatever.app
. -
Spotlight : recherche de fichiers avec
mdfind
et affichage des métadonnées (telles que les informations EXIF d'une photo) avecmdls
. -
Ayez à l'esprit que Mac OS dérive du système Unix BSD et que beaucoup de commandes (par exemples
ps
,ls
,tail
,awk
,sed
) présentent de légères différences avec leurs versions pour Linux, qui lui est largement influencé par System V et les outils GNU. Vous pouvez souvent faire la distinction grâce à l'en-tête « BSD General Commands Manual » dans les pages de manuel. Dans certains cas, les versions GNU peuvent également être installées (telles quegawk
etgsed
pour GNU awk et GNU sed). Pour écrire des scripts Bash multi-plateformes évitez d'utiliser de telles commandes (par exemple, envisagez d'utiliser Python ou Perl) ou alors testez-les soigneusement. -
Pour obtenir des informations sur la version de Mac OS, servez-vous de
sw_vers
.
Autres ressources
- awesome-shell : une liste organisée d'outils et ressources pour le shell.
- awesome-osx-command-line: un guide plus approfondi sur la ligne de commande pour Mac OS.
- Strict mode : pour écrire de meilleurs scripts shell.
- shellcheck : un outil d'analyse statique des scripts shell. L'équivalent de lint pour bash, sh et zsh.
- Filenames and Pathnames in Shell : les points de détail, malheureusement compliqués, sur la manière de manipuler correctement les noms de fichiers dans les scripts shell.
Avertissement
Sauf pour de petites tâches, le code est écrit de sorte que d'autres personnes puissent le lire. Il n'y a pas de pouvoir sans responsabilité : le fait que vous puissiez faire quelque chose en Bash ne signifie nécessairement que vous devriez le faire ! ;)
Licence
Ce document est mis à disposition selon les termes de la Licence Creative Commons Attribution - Partage dans les mêmes conditions 4.0 International.