From mboxrd@z Thu Jan 1 00:00:00 1970 Authentication-Results: mx.groups.io; dkim=missing; spf=pass (domain: intel.com, ip: 192.55.52.115, mailfrom: chasel.chiu@intel.com) Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by groups.io with SMTP; Thu, 08 Aug 2019 05:58:34 -0700 X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga007.jf.intel.com ([10.7.209.58]) by fmsmga103.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 08 Aug 2019 05:58:34 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.64,361,1559545200"; d="scan'208";a="165685441" Received: from cchiu4-mobl1.gar.corp.intel.com ([10.252.188.170]) by orsmga007.jf.intel.com with ESMTP; 08 Aug 2019 05:58:32 -0700 From: "Chiu, Chasel" To: devel@edk2.groups.io Cc: Bob Feng , Liming Gao Subject: [PATCH] BaseTools/Scripts: Add GetUtcDateTimer script. Date: Thu, 8 Aug 2019 20:58:07 +0800 Message-Id: <20190808125807.1840-1-chasel.chiu@intel.com> X-Mailer: git-send-email 2.13.3.windows.1 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 Signed-off-by: Chasel Chiu --- BaseTools/Scripts/GetUtcDateTime.py | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) diff --git a/BaseTools/Scripts/GetUtcDateTime.py b/BaseTools/Scripts/GetUtcDateTime.py new file mode 100644 index 0000000000..8b25a0a867 --- /dev/null +++ b/BaseTools/Scripts/GetUtcDateTime.py @@ -0,0 +1,47 @@ +## @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 + +def Usage(): + print ("GetUtcDateTime - Version " + VersionNumber) + print ("Usage:") + print ("GetUtcDateTime [type]") + print (" --year: Return UTC year of now") + print (" Example output (2019): 39313032") + print (" --date: Return UTC date MMDD of now") + print (" Example output (7th August): 37303830") + print (" --time: Return 24-hour-format UTC time HHMM of now") + print (" Example output (4:25): 35323430") + +def Main(): + if len(sys.argv) == 1: + Usage() + return 0 + + today = datetime.datetime.utcnow() + if sys.argv[1].strip().lower() == "--year": + ReversedNumber = str(today.year)[::-1] + print (''.join(hex(ord(HexString))[2:] for HexString in ReversedNumber)) + return 0 + if sys.argv[1].strip().lower() == "--date": + ReversedNumber = str(today.strftime("%m%d"))[::-1] + print (''.join(hex(ord(HexString))[2:] for HexString in ReversedNumber)) + return 0 + if sys.argv[1].strip().lower() == "--time": + ReversedNumber = str(today.strftime("%H%M"))[::-1] + print (''.join(hex(ord(HexString))[2:] for HexString in ReversedNumber)) + return 0 + else: + Usage() + return 0 + +if __name__ == '__main__': + sys.exit(Main()) -- 2.13.3.windows.1