Il est vrai que le séparateur "vide" pour awk n'est pas déterminé par posix.
Essaye ceci, je suis curieux de savoir si cela fonctionne avec le awk de MAC:
Code:
awk '{gsub(/./,"& ");for (i=1;i<=NF;i++) $i ~ /[A-Za-z]/ ? A[toupper($i)]+=1 : 0};END{for (i in A) {printf "%s - %s\n", A[i], i}}' dico.txt
Sinon, le motif est bien en principe avant les crochets, ici on n'évalue pas le motif, on évalue:
$i ~ /[A-Za-z]/ : c'est le tilde qui compte ici.
Après, le
: 0 est bien le "sinon" et il est présent car obligatoire car on est sur un opérateur ternaire:
expr ? expr : expr