V2 re-wrote the script to use ArgumentParser and remove sys.exit().
Regards, Chasel > -----Original Message----- > From: [email protected] [mailto:[email protected]] On Behalf Of > Chiu, Chasel > Sent: Wednesday, August 14, 2019 6:21 PM > To: [email protected] > Cc: Feng, Bob C <[email protected]>; Gao, Liming <[email protected]>; > Leif Lindholm <[email protected]> > Subject: [edk2-devel] [PATCH v2] 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 <[email protected]> > Cc: Liming Gao <[email protected]> > Cc: Leif Lindholm <[email protected]> > Signed-off-by: Chasel Chiu <[email protected]> > --- > BaseTools/Scripts/GetUtcDateTime.py | 44 > ++++++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 44 insertions(+) > > 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.<BR> # # > +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() > -- > 2.13.3.windows.1 > > > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#45602): https://edk2.groups.io/g/devel/message/45602 Mute This Topic: https://groups.io/mt/32862249/21656 Group Owner: [email protected] Unsubscribe: https://edk2.groups.io/g/devel/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
