python - 如果用户没有传递参数并使用变量作为参数,我如何让 argparse 不接受任何参数(Python)
问题描述
如果用户没有传递参数并使用存储在日志变量中的生成日志,我如何让我的日志解析器不接受任何参数。
#####################
#LogFile
#####################
log =(sys.argv[2])
logging.basicConfig(filename=log ,level=logging.DEBUG)
if log == "-p" or log == "--path":
TIME_STAMPS = re.split('\s+', time.strftime('%Y%m%d %H%M%S %H:%M:%S', time.localtime()))
FILE_TIME_STAMP = TIME_STAMPS[0] + "_" + TIME_STAMPS[1]
log = "version" + "_" + FILE_TIME_STAMP + "_ValidLinkCheck.log"
logging.basicConfig(filename=log ,level=logging.DEBUG)
########################
#Command Line Options
########################
#initiate the parser
parser = argparse.ArgumentParser()
parser.add_argument('-l','--log', dest='log', default = 'log1' , help = "Log File", action="store_true", required= False)
parser.add_argument("-p", "--path", action="store", help="path to file", dest="filename")
parser.add_argument("-x", "--execute", help="delete invalid link", action="store_true")
#read arguments from the command line
args = parser.parse_args()
#check for --path or -p
if args.filename:
print("Script is up to date and running.......................")
logging.info("Script is up to date and running.......................")
path = (format(args.filename))
logging.info("Searching for input link" + path)
status, result = commands.getstatusoutput('cd ' + path)
解决方案
推荐阅读
- loops - 如何避免 2 个循环并将我的数据存储在 Perl 的数组中
- android - jnilibs/arm64-v8a 的 MediaCodec 失败
- javascript - Material UI Popover 打开越界
- javascript - 如何在数组中深度查找值?
- websocket - Jetty WebSocket - 需要 onWebSocketClose 会话
- r - 从 RODBCext 移植到 odbc 和 DBI 的问题
- python - 在 Python 中使用 8 像素邻域模式检查和填充大数组中的中心像素
- c# - 如何将条件订单与 EntityFramework/linq 一起使用
- reactjs - 反应:更新状态,映射状态以显示列表但列表在一秒钟后从视图中消失?
- batch-file - cmd删除文件文件夹WIN 10内容的想法?