Bonjour,
MA CONFIG: BackTrack 3, KDE 3.5.7, Linux BT 2.6.21.5, Bash 3.1.17.
Sous cette config mon script "menu.sh" génère quelques erreurs.
http://www.airfirst.ch/b2/menu.sh
Voir l'output plus bas.
Comment les résoudre?
1. L'erreur sur la 1ère ligne: -bash: ./menu.sh: /bin/bash^M: bad interpreter: No such file or directory
2. Les erreur d'affichage des commandes: 03,05,06,08,11. Il semble que ça ne concerne que les chaines qui ont quelque chose après une variable !!!
3. L'erreur sur la ligne 31 (dans le bloc "case").
4. Question à 10000 points !!!!!
Que pourrait être la raison (à s'arracher les cheveux) de ceci:
- Teste du menu1.sh, OK sans erreur.
http://www.airfirst.ch/b2/menu1.sh
http://www.airfirst.ch/b2/outpu_menu1.txt
- Avec l'éditeur Kate, Copier tout le contenu de meni1.sh et coller dans menu.sh vide.
- Teste de menu.sh done l'erreur: -bash: ./menu.sh: /bin/bash^M: bad interpreter: No such file or directory
Qui puis-je maudire: Linux, Bash ou ... ?????
Merci
STEP_A
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 bt Desktop # menu.sh -bash: ./menu.sh: /bin/bash^M: bad interpreter: No such file or directory
STEP_B: I remove the 1st line
STEP_C: I replaced "$CN1" by its value "eth1" for commands 03,05,06,08,11.
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 bt Desktop # menu.sh : command not found : command not found ./menu.sh: line 13: menu: command not found ********************* TEST MENU INIT 01 ls 02 dir eth1 -alldir eth1 04 iwlist eth1 scaniwlist eth1 mode monitor eth1 07 echo start eth1 up hw ether 50:41:32:23:14:05 MAIN 09 Set ESSID: [] 10 Set BSSID: [] eth1echo --write file 12 echo --test -e -a eth1 Choix? 01 ': not a valid identifier `com '/menu.sh: line 31: syntax error near unexpected token `in '/menu.sh: line 31: ` case "$com" in
menu.sh
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 bt Desktop # menu.sh : command not found : command not found ./menu.sh: line 13: menu: command not found ********************* TEST MENU INIT 01 ls 02 dir eth1 03 dir eth1 -all 04 iwlist eth1 05 iwlist eth1 scan 06 iwconfig eth1 mode monitor 07 echo start eth1 08 ifconfig eth1 up hw ether 50:41:32:23:14:05 MAIN 09 Set ESSID: [] 10 Set BSSID: [] eth1echo --write file 12 echo --test -e -a eth1 Choix? 01 ': not a valid identifier `com '/menu.sh: line 31: syntax error near unexpected token `in '/menu.sh: line 31: ` case "$com" in
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
41
42
43
44
45
46
47
48
49
50
51 #!/bin/bash #------------------------------------------------------------------------------------ Initialisation DFN=file CN1=eth1 CN2=rausb0 RTAP0=rtap0 MESSID=IPW22 FIP_100=192.168.1.100 FIP_101=192.168.1.101 MAC=50:41:32:23:14:05 #----------------------------------------------------------------------------------------- Functions menu { echo echo "********************* TEST MENU" echo "INIT" com01="ls" ; echo " 01 $com01" com02="dir $CN1" ; echo " 02 $com02" com03="dir $CN1 -all" ; echo " 03 $com03" com04="iwlist $CN1" ; echo " 04 $com04" com05="iwlist $CN1 scan" ; echo " 05 $com05" com06="iwconfig $CN1 mode monitor" ; echo " 06 $com06" com07="echo start $CN1" ; echo " 07 $com07" com08="ifconfig $CN1 up hw ether $MAC" ; echo " 08 $com08" echo "MAIN" com09="Set ESSID: [$ESSID]" ; echo " 09 $com09" com10="Set BSSID: [$BSSID]" ; echo " 10 $com10" com11="echo --write $DFN $CN1" ; echo " 11 $com11" com12="echo --test -e $ESSID -a $BSSID $CN1" ; echo " 12 $com12" read -p "Choix? " com case "$com" in 01) eval "$com01";; 02) eval "$com02";; 03) eval "$com03";; 04) eval "$com04";; 05) eval "$com05";; 06) eval "$com06";; 07) eval "$com07";; 08) eval "$com08";; 09) read -p "ESSID ? " ESSID;; 10) read -p "BSSID ? " BSSID;; 11) eval "$com11";; 12) eval "$com12";; * ) echo "BYE ...."; exit;; esac } #---------------------------------------------------------------------------------------------- BODY while true; do menu done exit #---------------------------------------------------------------------------------------------------
Partager