Advertisement
Guest User

Untitled

a guest
Feb 19th, 2017
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.73 KB | None | 0 0
  1. #!/usr/bin/env python
  2.  
  3. import os, re, sys
  4.  
  5. where = '.'
  6. try:
  7. where = sys.argv[1]
  8. except:
  9. pass
  10.  
  11. # Maps the euffix of the filename to the OSHPark format
  12. layerMapping = {
  13. "F_Cu.gbr": "gtl",
  14. "B_Cu.gbr": "gbl",
  15. "F_Mask.gbr": "gts",
  16. "B_Mask.gbr": "gbs",
  17. "F_SilkS.gbr": "gto",
  18. "B_SilkS.gbr": "gbo",
  19. "Edge_Cuts.gbr": "gko",
  20. 'drl': "xln"
  21. }
  22.  
  23. pattern = re.compile(r'^(?P<basename>.*)-(?P<ident>[^-]*)$')
  24. p2 = re.compile(r'^(?P<basename>.*)\.(?P<ident>.*)$')
  25. os.chdir(where)
  26. for filename in os.listdir('.'):
  27. match = False
  28. if filename.endswith(".gbr"):
  29. match = re.search(pattern,filename)
  30. elif filename.endswith(".drl"):
  31. match = re.search(p2,filename)
  32.  
  33. if match:
  34. newFilename = match.group('basename')+'.'+layerMapping[match.group('ident')]
  35. print 'Renaming \'{0}\' to \'{1}\''.format(filename, newFilename)
  36. os.rename(filename, newFilename)
  37. else:
  38. print 'No match.', filename
  39.  
  40. sys.exit(0)
  41.  
  42. layerMapping = {
  43. "top": "gtl",
  44. "bottom": "gbl",
  45. "topmask": "gts",
  46. "bottommask": "gbs",
  47. "topsilk": "gto",
  48. "bottomsilk": "gbo",
  49. "plated-drill": "drl",### DIFFERENT EXTENSION
  50. "group2": "g2",
  51. "group3": "g3",
  52. "toppaste": "gtp",
  53. "bottompaste": "gbp",
  54. "outline": "outline",
  55. }
  56.  
  57.  
  58.  
  59. pattern = re.compile(r'^(?P<basename>[^\.]*)\.(?P<layer>[^\.]*)\.(?P<ext>(gbr)|(cnc))$')
  60. os.chdir(where)
  61. for filename in os.listdir('.'):
  62. if filename.endswith(".gbr") or filename.endswith(".cnc"):
  63. match = re.search(pattern,filename)
  64. if match:
  65. if match.group('layer') in layerMapping:
  66. newFilename = match.group('basename')+'.'+match.group('layer')+'.'+layerMapping[match.group('layer')]
  67. print 'Renaming \'{0}\' to \'{1}\''.format(filename, newFilename)
  68. os.rename(filename, newFilename)
  69. else:
  70. print 'No match.', filename
  71.  
  72.  
  73. sys.exit(0)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement