i have written this python program. whenever i run the script using parameters like
python script.py -t It returns me current time in unixtime.
but whenever i try to pass an argument like
python script.py -c 1325058720 It says LMT is not defined. So i removed the LMT from the
LMT = time.strftime("%a, %d %b %Y %H:%M:%S +0000", time.localtime())
Then it just skip my argument and returns the current time in Localtime.
Can someone please help me to pass an argument in the LMT and convert it to Readable time format. I need to pass an argument to it and see the output in the localtime readable format
import optparse
import re
import time
GMT = int(time.time())
AMT = 123456789
LMT = time.strftime("%a, %d %b %Y %H:%M:%S +0000", time.localtime(LMT))
VERBOSE=False
def report(output,cmdtype="UNIX COMMAND:"):
#Notice the global statement allows input from outside of function
if VERBOSE:
print "%s: %s" % (cmdtype, output)
else:
print output
#Function to control option parsing in Python
def controller():
global VERBOSE
p = optparse.OptionParser()
p.add_option('--time', '-t', action="store_true", help='gets current time in epoch')
p.add_option('--nums', '-n', action="store_true", help='gets the some random number')
p.add_option('--conv', '-c', action="store_true", help='convert epoch to readable')
p.add_option('--verbose', '-v',
action = 'store_true',
help='prints verbosely',
default=False)
#Option Handling passes correct parameter to runBash
options, arguments = p.parse_args()
if options.verbose:
VERBOSE=True
if options.time:
value = GMT
report(value, "GMT")
elif options.nums:
value = AMT
report(value, "AMT")
elif options.conv:
value = LMT
report(value, "LMT")
else:
p.print_help()
I was wrong to access the variable outside the function which didn't clicked me.
elif options.conv:
LMT = options.conv
LMT= float(LMT)
LMT = time.strftime("%a, %d %b %Y %H:%M:%S +0000", time.localtime(LMT))
print '%s'% LMT