From caa7d3a896f6aa82de3d741aa5236a62ba91ac48 Mon Sep 17 00:00:00 2001 From: Chasel Chiu Date: Thu, 8 Aug 2019 20:43:46 +0800 Subject: BaseTools/Scripts: Add GetUtcDateTime script. REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2067 A script that can return UTC date and time in ascii format which is convenient for patching build time information in any binary. Cc: Bob Feng Cc: Liming Gao Cc: Leif Lindholm Signed-off-by: Chasel Chiu Reviewed-by: Bob Feng Acked-by: Leif Lindholm --- BaseTools/Scripts/GetUtcDateTime.py | 44 +++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 BaseTools/Scripts/GetUtcDateTime.py (limited to 'BaseTools/Scripts') diff --git a/BaseTools/Scripts/GetUtcDateTime.py b/BaseTools/Scripts/GetUtcDateTime.py new file mode 100644 index 0000000000..3cfb6ac2ae --- /dev/null +++ b/BaseTools/Scripts/GetUtcDateTime.py @@ -0,0 +1,44 @@ +## @file +# Get current UTC date and time information and output as ascii code. +# +# Copyright (c) 2019, Intel Corporation. All rights reserved.
+# +# SPDX-License-Identifier: BSD-2-Clause-Patent +# + +VersionNumber = '0.1' +import sys +import datetime +import argparse + +def Main(): + PARSER = argparse.ArgumentParser( + description='Retrieves UTC date and time information (output ordering: year, date, time) - Version ' + VersionNumber) + PARSER.add_argument('--year', + action='store_true', + help='Return UTC year of now. [Example output (2019): 39313032]') + PARSER.add_argument('--date', + action='store_true', + help='Return UTC date MMDD of now. [Example output (7th August): 37303830]') + PARSER.add_argument('--time', + action='store_true', + help='Return 24-hour-format UTC time HHMM of now. [Example output (14:25): 35323431]') + + ARGS = PARSER.parse_args() + if len(sys.argv) == 1: + print ("ERROR: At least one argument is required!\n") + PARSER.print_help() + + today = datetime.datetime.utcnow() + if ARGS.year: + ReversedNumber = str(today.year)[::-1] + print (''.join(hex(ord(HexString))[2:] for HexString in ReversedNumber)) + if ARGS.date: + ReversedNumber = str(today.strftime("%m%d"))[::-1] + print (''.join(hex(ord(HexString))[2:] for HexString in ReversedNumber)) + if ARGS.time: + ReversedNumber = str(today.strftime("%H%M"))[::-1] + print (''.join(hex(ord(HexString))[2:] for HexString in ReversedNumber)) + +if __name__ == '__main__': + Main() -- cgit v1.2.3