我们有一个python代码,我们在命令行上使用一些参数py code.py -p1 a -p2 b来执行,现在我们需要使用一个函数来传递一个日期作为参数,有什么方法可以写类似py code.py -p1 a -p2 b -p3 datetime.date.now()的东西吗?我的老板正在问我们是否可以这样做,但我已经搜索,并没有发现任何东西。提前感谢任何答案。
py code.py -p1 a -p2 b
py code.py -p1 a -p2 b -p3 datetime.date.now()
dced5bon1#
不,你不能。你的shell没有执行python命令。但是,您可以使用shell功能生成日期,例如使用sh/bash:
py code.py -p1 a -p2 b -p3 $(date '+%Y-%m-%d')
将启动以下命令:
py code.py -p1 a -p2 b -p3 2023-01-12
另一种可能性是将now作为参数传递,并在脚本中处理它。
now
5jdjgkvh2#
你可以,但是要注意这是一个很大的安全风险。它会运行在命令行输入的任何代码。
text = eval(parameter)
2条答案
按热度按时间dced5bon1#
不,你不能。你的shell没有执行python命令。
但是,您可以使用shell功能生成日期,例如使用sh/bash:
将启动以下命令:
另一种可能性是将
now
作为参数传递,并在脚本中处理它。5jdjgkvh2#
你可以,但是要注意这是一个很大的安全风险。它会运行在命令行输入的任何代码。