Partage
  • Partager sur Facebook
  • Partager sur Twitter

Passer paramètre * à un script shell

    24 décembre 2018 à 15:04:14

    Bonjour,

    Est-il possible de passer le paramètre * à un script shell ? Ca peut paraître bête, mais le script test suivant:

    #!/bin/bash

    echo $1

    exécuté avec ./test * renvoie test et non *, contrairement à ce qui devrait se passer avec un paramètre quelconque. Cela ne provient pas du fait que echo $1 est interprété comme echo * car echo "e $1" renvoie e test et non e *

    Je n'ai pas réussi à trouver d'information sur des paramètres "spéciaux" impossibles à passer à un script. * fait-il exception ? Est-ce une impossibilité fondamentale ?

    Merci d'avance pour l'attention que vous porterez à ce message :)

    Florian

    • Partager sur Facebook
    • Partager sur Twitter
      24 décembre 2018 à 16:01:21

      salut,

      * est un caractère spécial qui provoque le Développement des chemins (cf. cette expression dans le man).

      pour utiliser *  en tant que paramètre, sans qu'il soit développé en la liste des fichiers du répertoire courant, il faut le protéger par une barre oblique, ou des apostrophes.

      • Partager sur Facebook
      • Partager sur Twitter

      Validez la réponse utile « Un problème clairement exposé est à moitié résolu. » Pas de MP technique

        25 décembre 2018 à 22:21:13

        Salut !

        Merci pour ces informations :)

        • Partager sur Facebook
        • Partager sur Twitter

        Passer paramètre * à un script shell

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown