asmdu.sh 1.0 KB

12345678910111213141516171819202122232425
  1. #!/bin/bash
  2. #
  3. #du of each subdirectory in a directory for ASM
  4. #
  5. D=$1
  6. if [[ -z $D ]]
  7. then
  8. echo "Please provide a directory !"
  9. exit 1
  10. fi
  11. (for DIR in `asmcmd ls ${D}`
  12. do
  13. echo ${DIR} `asmcmd du ${D}/${DIR} | tail -1`
  14. done) | awk -v D="$D" ' BEGIN { printf("\n\t\t%40s\n\n", D " subdirectories size") ;
  15. printf("%25s%16s%16s\n", "Subdir", "Used MB", "Mirror MB") ;
  16. printf("%25s%16s%16s\n", "------", "-------", "---------") ;}
  17. {
  18. printf("%25s%16s%16s\n", $1, $2, $3) ;
  19. use += $2 ;
  20. mir += $3 ;
  21. }
  22. END { printf("\n\n%25s%16s%16s\n", "------", "-------", "---------");
  23. printf("%25s%16s%16s\n\n", "Total", use, mir) ;} '