#!/usr/bin/python2 print """ Variable Grabbler - version 3.1 -------------------------------""" # definitions import os, json, sys if not len(sys.argv)==3: print >> sys.stderr, "Error: Exactly two arguments required: \"python variable_grabbler.py \"" sys.exit(1) print "Reading config file...", config_file = open(sys.argv[2],"r") config_values = json.loads(config_file.read().decode("utf-8")) config_file.close() print "Done." print "Working on file: "+sys.argv[1] for variable in config_values: print "> "+variable+" => ", file_in = open(sys.argv[1], "r") file_content = file_in.read() file_in.close() if config_values[variable][0] == "file": print "Found array. Adding file instead: " + config_values[variable][1] file_replacement = open(config_values[variable][1], "r") replacement = file_replacement.read() file_replacement.close() elif config_values[variable][0] == "exec": print "Found array. Executing command instead: " + config_values[variable][1] #Add code to replace variable with command output here print >> sys.stderr, "Error: This option is not yet supported." replacement = "" else: replacement = config_values[variable] print "\"" + replacement + "\"" file_out = open(sys.argv[1], "w") file_out.write(file_content.decode('utf-8').replace("%" + variable + "%", replacement).encode('utf-8')) file_out.close() print "Done."