1416 links
  • Animal
  • Home
  • Login
  • RSS Feed
  • ATOM Feed
  • Tag cloud
  • Picture wall
  • Daily
Links per page: 20 50 100
page 1 / 1
2 results tagged Variable x
  • Local Variables

    A propos des variables de type local en Bash.

    Tout d'abord, la sécurité.
    Afin d'écrire plus rapidement, on se retrouve souvent à déclarer et initialiser la variable en même temps :

    local var="plouf plouf"

    Sauf qu'en faisant ça, l'ordre d'exécution est le suivant :

    • attribution de la valeur plouf plouf à la variable var;
    • restriction de la portée de la variable var au niveau local.

    Ce qui signifie que la variable reste accessible pendant un instant au niveau global. Il faut donc mieux faire la déclaration et l'instanciation en deux temps :

    local var
    var="plouf plouf"

    Ce qui m'amène au deuxième point. Une fois qu'une variable a été déclarée local, il n'est pas besoin de remettre le mot-clef local à chaque instanciation. Ainsi, si je considère le script suivant :

    #/usr/bin/env bash
    
    ma_fonction()
    {
        local var = "ALEX"
        echo "$var"
    
        var="TOM"
        echo "$var"
    }
    
    ma_fonction
    
    echo "<$var>"

    La sortie sera :

    ALEX
    TOM
    <>
    Tue Jun 26 18:48:10 2018 * - permalink -
    QRCode
    - http://tldp.org/LDP/abs/html/localvar.html
    Bash Linux Local Variable
  • linux - LANG=C is in a number of the /etc/init.d/* scripts. What does LANG=C do and why do you need to set LANG=C. - Super User

    La variable d'environnement LANG sous Linux, contient la valeur liée aux paramètres locaux (langue, clavier, ...).
    Elle vaut en général quelquechose comme ça:
    fr_FR.utf8
    es_EC.utf8
    en_US.utf8
    etc

    Mais parfois, on voit cette variable LANG changer de valeur. En particulier, lors d'une compilation en langage C.
    On voit alors:

    LANG=C

    Mais cela n'a (presque) rien a voir avec le fait que c'est le langage C qui est en jeu.
    La "locale" C est une convention POSIX qui permet d'anticiper les sorties de certains outils tels que grep. Cette locale C permet en outre d'augmenter les performances de ces mêmes outils, en n'utilisant pas l'UTF8.
    Enfin, la langue de cette locale est l'anglais. Eh oui.
    Du coup au lieu de faire ça:

    $ echo $LANG
    $ fr_FR.utf8
    $ LANG=C
    $ echo oui | commande

    On fait ça:

    $ echo $LANG
    $ fr_FR.utf8
    $ LANG=C
    $ echo yes | commande
    Tue May 23 04:25:04 2017 * - permalink -
    QRCode
    - https://superuser.com/questions/334800/lang-c-is-in-a-number-of-the-etc-init-d-scripts-what-does-lang-c-do-and-why?noredirect=1&lq=1
    Environnement LANG Linux locale POSIX Script superuser.com Variable
Links per page: 20 50 100
page 1 / 1
Shaarli - The personal, minimalist, super-fast, database free, bookmarking service by the Shaarli community - Help/documentation