Parametres commencant par un tiret

Comment désigner les parametres commencant par un tiret dans un script (unix) ?
Merci de me répondre

2 réponses

  1. Modérateur
    Salut,

    Tu peux jeter un oeil à cette réponse dans un premier temps, ou bien t'intéresser à la fontion "getopts" du bash (man bash)...
    0
    1. Modérateur
      Re-

      En partant de ton exemple dans ton autre message, voilà un petit exemple utilisant "getopts" :
      #! /bin/bash
      # script_getopts.sh
      
      I="-i"
      F="-f"
      
      while getopts ":i:f:" OPTION 
      do
      case $OPTION in
      i)	# gestion option "-i"
      	for rep in $(find -type d)
      	do
      		rm $I ${rep}/*."$2"
      	done
      	;;
      f)	# gestion option "-f"
      	for rep in $(find -type d)
      	do
      		rm $F ${rep}/*.$2
      	done
      	;;
      :)	# gestion d'absence de paramètre
      	echo "Vous devez fournir une extension de fichier..."
      	echo
      	echo "Usage : script_getopts.sh [option] [paramètre]"
      	echo
      	;;
      \?)	# gestion d'option incorrecte
      	echo "Option incorrecte $OPTARG"
      	echo
      	echo "Usage : script_getopts.sh [option] [paramètre]"
      	echo "Options = -i (confirmation) ou -f (sans confirmation)"
      	echo
      	;;
      esac
      done
      ;-))
      0
      1. je comprends pas trop la réponse...l'autre exemple n'est pas le mien..ni le script dailleurs...
        0
      2. Contributeur
        Salut,

        Merci de répondre dans l'autre post ;-\

        Ceci dit, j'ai mentionné le fait que tu devrais t'orienter vers cette solution en te proposant un exemple de mise en oeuvre, je n'ai pas dit que c'était LA solution ni un exemple concret correspondant à tes besoins, mais une façon de faire qui me parait plus à propos...
        0