Tout fichier exécutable dans un répertoire de votre chemin peut être une "commande". Il peut s'agir d'un script comme suggéré dans d'autres réponses, mais il peut également s'agir d'un programme compilé dans n'importe quelle langue prise en charge que vous connaissez.
Les alias fonctionneront également, mais ils sont limités car ils sont «à une ligne», de sorte que tout ce qui est complexe avec eux génère rapidement du code très difficile à lire. De plus, comme ils s'exécutent dans la même étendue de variable que le shell dans lequel vous les saisissez, ils peuvent facilement avoir des effets secondaires imprévus, comme vous laisser dans un autre répertoire ou laisser des variables définies qui ne sont nécessaires que par la tâche exécutée par l'alias. (Bien sûr, vous pouvez parfois utiliser un alias précisément parce qu'il a des effets secondaires souhaitables.)
Si vous placez vos nouvelles commandes dans un répertoire de votre chemin, elles peuvent être trouvées par le shell et exécutées. L'endroit le plus courant pour les mettre est dans $ HOME / bin. Si ce répertoire existe, il sera souvent automatiquement ajouté à votre chemin.
Deux choses à garder à l'esprit lors de la configuration: 1) Il est généralement préférable d'utiliser des noms uniques pour vos commandes qui ne correspondent pas à ceux déjà définis sur votre système. Il y a beaucoup de débat à ce sujet, mais le point principal est que les commandes familières ne devraient pas avoir de résultats inattendus si quelqu'un d'autre utilise votre système et que s'habituer à une commande commune en faisant quelque chose de spécial peut vous causer des ennuis lorsque vous travaillez sur un autre système. où il n'est pas défini de cette façon.
2) Vous pouvez ajouter $ HOME / bin au début ou à la fin de votre chemin (ou n'importe où entre les deux, mais cela n'est généralement pas fait).
L'ajouter au début de votre chemin est le choix le plus pratique car votre version d'une commande sera toujours celle qui s'exécute et elle sera trouvée plus rapidement. Il s'agit également d'une vulnérabilité de sécurité car quiconque peut obtenir une autorisation d'écriture sur votre $ HOME / bin (beaucoup plus facile que d'obtenir un accès root) peut remplacer très facilement les commandes courantes par du code potentiellement malveillant. De plus, si jamais vous avez besoin de demander de l'aide à quelqu'un qui ne connaît pas votre système, il est probable qu'il soit gêné par le comportement spécial de vos commandes personnalisées, sauf si vous consacrez beaucoup d'efforts supplémentaires à tout expliquer par-dessus poser votre question.
L'ajouter à la fin de votre instruction path est un peu plus sûr car toute commande portant le même nom que votre commande qui est déjà dans votre chemin sera trouvée en premier et exécutée à la place - et tout autre élément qui repose sur le fait que cette commande fonctionne comme prévu fonctionnera toujours .
Pour éviter tout cela (au détriment d'un peu de frappe supplémentaire), vous pouvez également placer votre commande dans un répertoire qui ne se trouve pas sur votre chemin afin qu'elle ne soit presque jamais exécutée involontairement car vous devrez taper son nom de chemin complet vers exécuter.
Comme la plupart des choses sous Linux, il existe de nombreuses façons de créer et d'utiliser de nouvelles commandes et chacune a ses propres avantages et limites.