#!/usr/bin/env awk BEGIN{ print "#!/usr/bin/env sed" } match($0, /Guid="Lua4Win.[^"]+"/) { plain = substr($0, RSTART+6, RLENGTH-7) cmd = "echo -n " plain " | sha512sum | head -c 32" while((cmd | getline) > 0) str = toupper($0) i = 1 guid_1 = substr(str,i,8) i+=8 guid_2 = substr(str,i,4) i+=4 guid_3 = substr(str,i,4) i+=4 guid_4 = substr(str,i,4) i+=4 guid_5 = substr(str,i,12) i+=12 print "s/" plain "/" guid_1 "-" guid_2 "-" guid_3 "-" guid_4 "-" guid_5 "/g" close(cmd) }