mtt_rename 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. #! /bin/sh
  2. ######################################
  3. ##### Model Transformation Tools #####
  4. ######################################
  5. # Bourne shell script: mtt_rename
  6. # P.J.Gawthrop Jan 1998
  7. # Copyright (c) P.J.Gawthrop 1998
  8. ###############################################################
  9. ## Version control history
  10. ###############################################################
  11. ## $Id$
  12. ## $Log$
  13. ## Revision 1.6 2002/04/22 08:05:26 gawthrop
  14. ## New regexp.
  15. ##
  16. ## Revision 1.5 2000/12/27 13:11:42 peterg
  17. ## *** empty log message ***
  18. ##
  19. ## Revision 1.4 1998/08/15 13:50:22 peterg
  20. ## Doesn't zap preexisting files
  21. ##
  22. ## Revision 1.3 1998/08/14 15:37:38 peterg
  23. ## rename now copies - no delete
  24. ##
  25. ## Revision 1.2 1998/01/06 13:57:39 peterg
  26. ## Now removes old version after copying
  27. ##
  28. # Revision 1.1 1998/01/06 13:48:23 peterg
  29. # Initial revision
  30. #
  31. ###############################################################
  32. old_name=$1
  33. new_name=$2
  34. extension=$3
  35. left='[^a-zA-Z]'
  36. right=$left
  37. if [ -f "$new_name$extension" ]; then
  38. echo "$new_name$extension already exists -- no action taken"
  39. exit
  40. fi
  41. if ls $old_name$extension > /dev/null 2>&1
  42. then
  43. echo Renaming $old_name$extension to $new_name$extension
  44. sed \
  45. -e "s/\($left\)$old_name\($right\)/\1$new_name\2/g" \
  46. -e "s/^$old_name\($right\)/$new_name\1/g" \
  47. <$old_name$extension >$new_name$extension
  48. fi