Advertisement
Guest User

Awk lab

a guest
Apr 25th, 2019
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.87 KB | None | 0 0
  1. #!/bin/bash
  2. #awk
  3.  
  4. echo "a)"
  5.  
  6. ps aux | awk \
  7. '
  8. {
  9. n = split($11, array, "/");
  10. print "User: " $1 "\t - proc: " array[n] "\t ( CPU = " $3 " MEM = " $4 " )"
  11. }
  12. '
  13.  
  14. echo -e "\nb)"
  15.  
  16. ps aux | awk \
  17. '
  18. {
  19. n = split($11, array, "/");
  20. print $11 " -----> " array[n];
  21. }
  22. '
  23.  
  24. echo -e "\nc)"
  25.  
  26. ps aux | awk \
  27. '
  28. {
  29. cpu += $3;
  30. mem += $4;
  31. }
  32. END \
  33. {
  34. print "CPU = " cpu;
  35. print "MEM = " mem;
  36. }
  37. '
  38.  
  39. echo -e "\nd)"
  40.  
  41. ps aux | awk \
  42. '
  43. {
  44. tabmem[$1] += $4
  45. tabcpu[$1] += $3
  46. }
  47. END \
  48. {
  49. maxcpu = 0;
  50. maxmem = 0;
  51. for(key in tabmem)
  52. {
  53. print key " - \t(CPU = " tabcpu[key] " MEM = " tabmem[key] ")"
  54.  
  55. if(tabmem[key] > maxmem)
  56. {
  57. maxmem = tabmem[key];
  58. maxmemkey = key;
  59. }
  60.  
  61. if(tabcpu[key] > maxcpu)
  62. {
  63. maxcpu = tabcpu[key];
  64. maxcpukey = key;
  65. }
  66. }
  67.  
  68. print "\ne)"
  69. print maxmemkey " - " maxmem
  70. print maxcpukey " - " maxcpu
  71. }
  72. '
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement