Bonjour,
Je sollicite votre aide dans un script shell que je suis en train de faire...
Déjà voici le script
Que fait le script alors il doit compter le nombre de ligne d'un fichier $1 et stocker cette valeur
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 #!/bin/bash #nombre de ligne de la BD cat $1 | wc -l > nbligne #ne prend que le parametre d'entrée numéro 1 cut -d " " -f 1 bdfinale.smi > bdcutfinale.smi #nb de O i=1 if [ "$i" -le 4 ] then awk -F '[Oo]' "NF-1 == $i" bdcutfinale.smi > bdO$i cat bdO$i | wc -l > nbligneO$i let 'nbO=nbligneO"$i" - nbligne' echo 'le nombre de molecule avec' "$i" 'O est de : ' $nbO let 'i="$i"+1' fi
Puis ensuite j'ai un fichier *.smi avec plusieurs colonnes, je ne prends que la 1ere.
Ensuite je fais une boucle allant de i a 4 me permettant de calculer le nombre de ligne avec 1 O.
Pourquoi 4 ? Car je sais que je n'ai pas plus de 4 O par ligne.
Il compte le nombre de ligne et retire ces lignes du fichier.
je compte le nombre de ligne du fichier restant et je le soustrait au nombres de lignes totaux.
J'ai ainsi le nombre de ligne avec seulement 1 fois le caractère O.
Ensuite je passe à i+1 et je répète avec le nombre de 0 égale à 2...
Et ainsi de suite...
En gros mon probléme se situe à cette ligneen effet j'ai fait un
Code : Sélectionner tout - Visualiser dans une fenêtre à part let 'nbO=nbligneO"$i" - nbligne'afin de débugger le code et c'est à cette ligne que le programme bloque avec cette erreur
Code : Sélectionner tout - Visualiser dans une fenêtre à part bash -x :/testscript blabla.smi
Je viens demander votre aide
Code : Sélectionner tout - Visualiser dans une fenêtre à part line 17: let: nbO=nbligneO$i - nbligne: syntax error in expression (error token is "$i - nbligne")
De plus ma ligneest-elle juste ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part let 'i="$i"+1'
Merci
Cédric
Partager