2 En utilisant nawk, comment résumer tous les numéros $1, $2et les $3champs? 8 6 2 7 3 5 1 9 4 Je veux que le résultat soit somme = 45 linux unix awk Steve la source J'ai eu un commentaire, j'ai réalisé que la question était générale. Peut-il s'agir d'un script bash ou voulez-vous un one-liner? nerdwaller Réponses: 5 nawk 'BEGIN { sum=0; } {sum += $1 + $2 + $3;} END { printf "%d\n", sum } ' a.in gt6989b la source 5 en utilisant awk: awk '{x+=$0;}END{print x}' RS="[ \n]" file Cela fonctionnera quel que soit le nombre de lignes ou de colonnes. En utilisant le séparateur d'enregistrement (RS) comme espace ou nouvelle ligne, chaque valeur est fractionnée en une ligne distincte et peut donc être facilement ajoutée. Gourou la source 0 Vous pouvez aussi aller avec coreutils et bc: <file head -c-1 | tr ' \n' '++'; echo) | bc Si certaines colonnes doivent être omises, par exemple si l'entrée est comme ceci: A 8 6 2 B 7 3 5 C 1 9 4 cut peut sélectionner les personnes recherchées: <file cut -d' ' -f2- | head -c-1 | tr ' \n' '++'; echo) | bc Sortie dans les deux cas: 45 Thor la source
5 en utilisant awk: awk '{x+=$0;}END{print x}' RS="[ \n]" file Cela fonctionnera quel que soit le nombre de lignes ou de colonnes. En utilisant le séparateur d'enregistrement (RS) comme espace ou nouvelle ligne, chaque valeur est fractionnée en une ligne distincte et peut donc être facilement ajoutée. Gourou la source
0 Vous pouvez aussi aller avec coreutils et bc: <file head -c-1 | tr ' \n' '++'; echo) | bc Si certaines colonnes doivent être omises, par exemple si l'entrée est comme ceci: A 8 6 2 B 7 3 5 C 1 9 4 cut peut sélectionner les personnes recherchées: <file cut -d' ' -f2- | head -c-1 | tr ' \n' '++'; echo) | bc Sortie dans les deux cas: 45 Thor la source
Réponses:
nawk 'BEGIN { sum=0; } {sum += $1 + $2 + $3;} END { printf "%d\n", sum } ' a.in
la source
en utilisant awk:
Cela fonctionnera quel que soit le nombre de lignes ou de colonnes. En utilisant le séparateur d'enregistrement (RS) comme espace ou nouvelle ligne, chaque valeur est fractionnée en une ligne distincte et peut donc être facilement ajoutée.
la source
Vous pouvez aussi aller avec coreutils et bc:
Si certaines colonnes doivent être omises, par exemple si l'entrée est comme ceci:
cut
peut sélectionner les personnes recherchées:Sortie dans les deux cas:
la source