Considérez les alias comme des surnoms. Vous pouvez avoir une commande que vous effectuez beaucoup mais que vous souhaitez raccourcir.
Par exemple, vous voulez souvent aller directement au bureau en ligne de commande, vous pouvez donc le faire
alias desktop="cd ~/Desktop"
A partir de là, il vous suffit de taper
desktop
dans le terminal et il effectuera le cd ~/Desktop
pour vous.
Les fonctions contiennent de la logique. Dans une fonction, vous pouvez appeler plusieurs programmes différents. Voici une fonction d'écho simple
function e {
echo $1
echo $1 $1
echo $1 $1 $1
}
Bien qu'il puisse ressembler à un alias lorsque vous l'appelez
e Hello
Votre e () peut se produire de nombreuses choses différentes. Ce qui précède est un exemple simpliste.
Les alias doivent être réservés aux cas d'utilisation simples. Exemple personnel - j'ai remplacé ma rm
commande comme ceci
alias rm='trash-put'
Chaque fois que je fais un rm, il l'enverra dans la corbeille au lieu de le supprimer du disque. Cela répond à ma maladresse dans le terminal où je peux (parfois) accidentellement supprimer un fichier important.
Les fonctions , vous devez vous en souvenir, sont des morceaux de logique. En règle générale, vous n'utilisez pas de fonction autonome. Cela ferait partie d'un script plus large. Imaginez un script qui prend tous vos fichiers et les renomme dans leurs versions latines de porc. Ignorez qu'il existe différentes façons de le faire.
Mais ce que vous pourriez faire, c'est parcourir tous les fichiers du répertoire et passer le chemin d'accès à votre fonction RenameAsPigLatin. La fonction RenameAsPigLatin peut avoir une logique supplémentaire là-dedans impliquant des nombres, où vous décidez que les fichiers se terminant par des nombres ne doivent pas être renommés.
Immédiatement, vous pouvez voir l'avantage de l'avoir comme fonction. La fonction peut se concentrer sur le changement de nom selon vos règles étranges tandis que le reste du script peut parcourir divers répertoires si nécessaire.