Advertisement
Guest User

Untitled

a guest
Apr 18th, 2014
59
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.90 KB | None | 0 0
  1. $ awk '{
  2. for(i=1; i<=NF; i+=2)
  3. names[$i] = ((names[$i]) ? names[$i]+$(i+1) : $(i+1))
  4. }
  5. END{
  6. for (name in names) print name, names[name]
  7. }' quest
  8. Tom 200
  9. John 10
  10.  
  11. xargs -n2 < file|awk '{a[$1]+=$2}END{for (i in a) print i,a[i]}'
  12.  
  13. Tom 200
  14. John 10
  15.  
  16. awk '{for (i=1;i<=NF;i+=2) a[$i]+=$(i+1)}END{for (i in a) print i,a[i]}' file
  17.  
  18. Tom 200
  19. John 10
  20.  
  21. $ echo 'Tom 100 John 10 Tom 100' | grep -o '[0-9]*' | paste -sd+ | bc
  22. 210
  23.  
  24. 100
  25. 10
  26. 100
  27.  
  28. 100+10+100
  29.  
  30. awk '/Tom/{
  31. for(i=1;i<=NF;i++)
  32. if($i=="Tom")s+=$(i+1);
  33. print "Tom",s;s=0}' your_file
  34.  
  35. awk -v RS=" " '{n=$1;getline;a[n]+=$1} END {for (i in a) print i,a[i]}' quest
  36. Tom 200
  37. John 10
  38.  
  39. cat quest
  40. Tom 100 John 10 Tom 100
  41. Paul 20 Tom 40 John 10
  42.  
  43. awk -v RS=" |n" '{n=$1;getline;a[n]+=$1} END {for (i in a) print i,a[i]}' quest
  44. Paul 20
  45. Tom 240
  46. John 20
  47.  
  48. awk -v RS=" |n" 'NR%2 {n=$1;next}{a[n]+=$1} END {for (i in a) print i,a[i]}' quest
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement