0
Je reçois une erreur de syntaxe sur la ligne 43 lors de la compilation du code de script Unix. Ce code est de rechercher dans un dossier de fichier texte et de faire correspondre n'importe quel mot du fichier input.txt. Code terminer n'a toujours pas encore siligne 43: erreur de syntaxe: fin de fichier inattendue
#!/bin/bash
findkeyword() {
file="$1"
keyword="$2"
value="$3"
int count = 0
cat $file | awk '{
while read line
do
for (ii=1;ii<=NF;ii++) {
if ($ii == $keyword)
count++
fi
}
done
}'
echo "Profile: " $file
scorefile $value $count
scorefile() {
value="$1"
count="$2"
echo "Score: " $value*$count
}
cat input.txt | awk '{
while read line
do
keyword=$1
value=$2
for xx in `ls submissions/*`
do
filename=$xx
findkeyword $filename $keyword $value
done
done
}'
Je viens d'essayer et me donner une erreur de syntaxe et à lui mettre fin – user968623
vous avez un munge horrible bash et awk dans le script, c'est le problème fondamental. – Petesh
Ce bit: fichier cat $ | awk '{ while read ligne faire pour (ii = 1; ii <= NF; ii ++) { if ($ ii == mot-clé $) count ++ fi } fait } souffre également de la même syntaxe bash/awk mélangée – Petesh