Advertisement
Guest User

Untitled

a guest
Sep 26th, 2018
218
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Awk 1.57 KB | None | 0 0
  1.  
  2. awk '
  3. BEGIN {
  4.         FULL="'$1'"
  5.         FS=":";
  6.         FMT="%-16s %-20s %-28s %20s %16s\n";
  7.         print "User Summary for ""'$HOSTNAME'\n";
  8.         "df -TB 1 | sed -n '"'2 p'"' | awk '"'{ print \$5 }'"'" |getline DISKTOTAL;
  9.         printf(FMT , "NAME", "LAST LOGIN", "HOME", "DISK USAGE", "SHELL");
  10.         printf(FMT , "===========", "================", "========================", "===================", $
  11. }{
  12. if ($NF != "/sbin/nologin" || FULL == "-a") {
  13.         if (!$2 == "")
  14.                 NOPASS = NOPASS $1;
  15.                 NPCNT += NPCNT;
  16.         DISKUSE == 0;
  17.         "du -b " $6 " | sed -n '"'\$p'"' | awk '"'{ print \$1 }'"'" |getline DISKUSE;
  18.         if (DISKUSE != "0") {
  19.                 TOTALUSE += DISKUSE;
  20.                 DISK = ((DISKUSE / DISKTOTAL) * 100);
  21.                 if (DISK < .01)
  22.                         DISK = .01;
  23.                 DISK = sprintf(" (%.2f\%)", DISK);
  24.                 DISKUSE = int(DISKUSE / 1024) "kb";
  25.         } else {
  26.                 DISKUSE = "--      ";
  27.                 DISK = "";
  28.         }
  29.         "last -n 1 " $1 " | sed -n '"'1 p'"' | awk '"'{ print \$4,\$5,\$6,\$7 }'"'" |getline NLAST;
  30.         if (index(NLAST, ":") == 0)
  31.                 NLAST="       --"
  32.         printf(FMT, $1, NLAST, $6,DISKUSE DISK, $7);
  33.         CNT++;
  34.         }
  35. }
  36. END {
  37.         printf("\n%s Displayed Users are using %sMB / %sMB disk space\n", CNT, int((TOTALUSE / 1024)
  38. / 1024$
  39.         printf("There are %d Users without passwords", NPCNT);
  40.         if (NPCNT > 0)
  41.                 printf(":\n %s\n", NOPASS);
  42. }' /etc/passwd 2>/dev/null;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement