123456789101112131415161718192021222324 |
- import sys
- import os
- import binascii
- import re
- def clean_line(string):
- comment_re = re.compile("/\*.*?\*/") # matches C-style comments /* */ at the end of a line
- return re.sub(comment_re, "" ,string).replace(' ','').replace('\n','')
- if len(sys.argv) < 2:
- print("Usage: python hex2bin.py file1.hex file2.hex ...")
- exit(0)
- filenames = sys.argv[1:]
- for f in filenames:
- bn = os.path.basename(f)
- with open(f) as ff:
- with open(bn[:-4] + ".bin", 'w') as out:
- lines = ff.readlines()
- for l in lines:
- c = clean_line(l)
- out.write(binascii.unhexlify(c))
-
|