Fish Shell:
Organiser le code en fonctions

Comment faire :

Dans Fish, vous écrivez une fonction avec le mot-clé function, vous lui donnez un nom, et vous terminez par end. Voici un exemple simple :

function hello
    echo "Hello, World!"
end

hello

Sortie :

Hello, World!

Maintenant, faisons-la saluer un utilisateur :

function greet
    set user (whoami)
    echo "Hey there, $user!"
end

greet

Sortie :

Hey there, your_username!

Pour la sauvegarder entre les sessions, utilisez funcsave greet.

Exploration plus profonde

Les fonctions de Fish Shell sont comme des mini-scripts — vous pouvez pratiquement tout y mettre. Historiquement, le concept de fonctions dans les scripts shell a sauvé d’innombrables heures de frappe et de débogage répétitifs. Contrairement aux langages de programmation comme Python, les fonctions Shell sont plus une question de commodité que de structure.

Certains shells, comme Bash, utilisent function ou juste des accolades. Fish reste fidèle à function ... end — clair et lisible. À l’intérieur des fonctions Fish, vous avez tous les avantages : paramètres, variables locales avec set -l, et vous pouvez même définir une fonction à l’intérieur d’une autre fonction.

Vous n’aurez pas besoin d’une valeur de retour car Fish n’accorde pas beaucoup d’importance à cela ; la sortie de votre fonction est son retour. Et si vous voulez des fonctions persistantes disponibles pour les sessions futures, n’oubliez pas funcsave.

Voir Aussi

Commandes de fonction

  • function — Créer une fonction
  • functions — Afficher ou effacer des fonctions
  • funcsave — Enregistrer la définition d’une fonction dans le répertoire de chargement automatique de l’utilisateur
  • funced — Modifier une fonction de manière interactive