Bonjour à tous,

J'ai une interrogation à propos des arguments et aussi de leurs vérifications au moment de lancer un scripts

voici comment je mets en places mesarguments dans un script :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
 
while (( "$#" ))
	do
		re='^-[a-z]$'
		echo $1
		if ! [[ $1 =~ $re ]]
		then
			echo "error"
			exit 1
		else
			case $1 in
				-f) file_arg=$2 
					if [ -z $file_arg ]
					then
						echo -e " [${Orange}Warn${NOCOLOR}] Fichier non renseigner\n------Sortie du script------"
						exit 1
					fi; shift 2 ;;
				-s) schema_source=$2 
					if [ -z $schema_source ]
					then
						echo -e " [${Orange}Warn${NOCOLOR}] Schema source non renseigner\n ------Sortie du script------"
						exit 1
					fi; shift 2 ;;
				-d) schema_dest=$2 
					if [ -z $schema_dest ]
					then
						echo -e " [${Orange}Warn${NOCOLOR}] Schema destination non renseigner\n ------Sortie du script------"
						exit 1
					fi; shift 2 ;;
				-i) auto_import=$2 
					if [ -z $auto_import ]
					then
						auto_import="n"
					fi; shift 2 ;;
				-h) help; exit 1;;
				*) echo "attention" ; shift ;;
			esac
		fi
	done
echo "totototo"
Du coup je fais une première verification pour détecter que l'argument est bien de la forme -[a-z]. par contre je n'arrive pas a faire sortir du script quand par exemple on a ca au lancement : et donc s'il manque un -[a-z] obligatoire (càd tous sauf le -h)

j'ai tester plusieurs chose mais aucune fonctionne

je vous remercie d'avance pour vos lumières

Cordialement.