Bonjour,
Je cherche à faire le script suivant: "recup_scheduled_reports.sh"
je souhaite qu'on puisse l'appeler avec les options -d, -w ou -m.
on peut mettre autant d'options que l'on veut, mais le script ne peu être appelé sans option.
voici le code que j'ai fais par rapport à cette problématique:
voici le résultat de l'exécution (script en mode debug):
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 while getopts ":d:w:m" freq; do case $freq in d) WORKING_REMOTE_DIR_DAY=1 ;; w) WORKING_REMOTE_DIR_WEEK=1 ;; m) WORKING_REMOTE_DIR_MONTH=1 ;; ?) Usage ;; esac shift $(( OPTING -1 )) done if [ $WORKING_REMOTE_DIR_DAY = "1" ]; then echo "WORKING_REMOTE_DIR_DAY=1" fi if [ $WORKING_REMOTE_DIR_WEEK = "1" ]; then echo "WORKING_REMOTE_DIR_WEEK=1" fi if [ $WORKING_REMOTE_DIR_MONTH = "1" ]; then echo "WORKING_REMOTE_DIR_MONTH=1" fi
Pourriez-vous m'aider?
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 if [ $WORKING_REMOTE_DIR_DAY = "1" ]; then echo "WORKING_REMOTE_DIR_DAY=1" fi + '[' = 1 ']' ./recup_scheduled_reports.sh: line 66: [: =: unary operator expected if [ $WORKING_REMOTE_DIR_WEEK = "1" ]; then echo "WORKING_REMOTE_DIR_WEEK=1" fi + '[' = 1 ']' ./recup_scheduled_reports.sh: line 69: [: =: unary operator expected if [ $WORKING_REMOTE_DIR_MONTH = "1" ]; then echo "WORKING_REMOTE_DIR_MONTH=1" fi + '[' = 1 ']' ./recup_scheduled_reports.sh: line 72: [: =: unary operator expected
merci
Partager