PageRenderTime 46ms CodeModel.GetById 20ms RepoModel.GetById 0ms app.codeStats 0ms

/ncftp-3.2.5/sh/fixfcase.sh

#
Shell | 30 lines | 27 code | 2 blank | 1 comment | 1 complexity | b479db82b535385cf6d8b7ee9d35d753 MD5 | raw file
Possible License(s): AGPL-3.0
  1. #!/bin/sh
  2. if [ "$#" -eq 0 ] ; then
  3. dir="."
  4. else
  5. dir="$1"
  6. fi
  7. find "$dir" | awk -F'|' '{
  8. dir=$0;
  9. base=$0;
  10. sub(".*/", "", base);
  11. i = index(dir, base);
  12. if (i <= 0) {
  13. dir="";
  14. } else {
  15. dir = substr(dir, 1, i - 1);
  16. sub("/*$", "/", dir);
  17. }
  18. i = index(base, ".");
  19. if (i > 0) {
  20. s = tolower(substr(base, i));
  21. if (substr(base, i) != s) {
  22. r = substr(base, 1, i - 1);
  23. base = r s;
  24. printf("echo /bin/mv \"%s\" \"%s%s\"\n", $0, dir, base);
  25. printf("/bin/mv \"%s\" \"%s%s\"\n", $0, dir, base);
  26. }
  27. }
  28. }' | /bin/sh