unset (Unix)

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher
image illustrant l’informatique
Cet article est une ébauche concernant l’informatique.

Vous pouvez partager vos connaissances en l’améliorant (comment ?) selon les recommandations des projets correspondants.

unset (de l'anglais to unset que l'on pourrait traduire par rendre indéfini) est une commande Unix[1] qui efface de la mémoire les variables passées en paramètre. Cette commande ne retourne aucun résultat (void).

Liste des paramètres[modifier | modifier le code]

  • -v : détruit une variable (comportement par defaut)
  • -f : détruit une fonction

Exemple d'utilisation[modifier | modifier le code]

Note: la première ligne correspond au shebang et les informations précédées d'un croisillon « # » sont des commentaires.

Avec une variable :

#!/bin/sh
ma_variable='Hello world!'     # on définit une variable et on lui affecte une valeur
echo $ma_variable              # on affiche la valeur de la variable
unset ma_variable              # on détruit la variable (identique à unset -v ma_variable)
echo $ma_variable              # rien n'est affiché car la variable n'existe plus

Avec une fonction et le paramètre -f :

#!/bin/sh
ma_fonction()
{
    echo "Bonjour le monde!"
}
ma_fonction                    # on appelle la fonction qui affiche « Bonjour le monde! »
unset -f ma_fonction           # on détruit la fonction
ma_function                    # affiche une erreur similaire à « ma_fonction: not found » car la fonction n'existe plus

Autres langages[modifier | modifier le code]

Article détaillé sur Wikibooks : Translinguisme, programmation.

unset est également disponible dans :

  • PHP (via la fonction du même nom)[2]

Notes et références[modifier | modifier le code]

  1. unset values and attributes of variables and functions – Shell Command Language, The Single UNIX® Specification, Issue 7, publié par The Open Group (internet archive)
  2. http://php.net/manual/fr/function.unset.php