【问题标题】:Log command used to run the python script用于运行 python 脚本的日志命令
【发布时间】:2021-12-03 12:29:52
【问题描述】:

我有一个 python 脚本(例如:myscript.py),其中包含一些可以从终端启动的选项:

myscript -n name - a age

将在我的终端打印:

10/15/2021 10:47:57 AM [INFO] # Script launched
10/15/2021 10:47:58 AM [INFO] # Your Name : name, Your age : age

如何修改我的脚本,以何种方式记录开头启动的命令,例如添加logging.info("the command launched : {}.format(string_of_command)")

10/15/2021 10:47:57 AM [INFO] # Script launched
10/15/2021 10:47:57 AM [INFO] # command used : myscript -n name - a age 
10/15/2021 10:47:59 AM [INFO] # Your Name : name, Your age : age

【问题讨论】:

  • "我想修改我的脚本" -> 那就去做吧,我们不知道你的代码
  • 好的,究竟是什么阻碍了您自己解决问题?到目前为止have you tried 是什么?例如,您是否尝试将python get command line 放入搜索引擎?当你这样做时发生了什么?

标签: python linux logging


【解决方案1】:

也许您可以使用如下代码使用sys 模块的argv 变量

print(f"{' '.join(sys.argv)}")

所以你的情况是这样的

string_of_command = f"{' '.join(sys.argv)}"
logging.info("the command launched : {}.format(string_of_command)")

【讨论】:

  • 感谢您的提示,它还提供了 script.py 的完整路径和使用的选项,所以我将使用一些正则表达式来仅保留有用的部分!
  • 你可以试试这个 - os.path.basename(sys.argv[0])。如果这有帮助,请接受答案
  • 第一个答案非常有帮助,已经接受了你的答案;)谢谢阿诺 :)
  • 啊抱歉,还没有绿色勾号!
  • 酷,谢谢。干杯
猜你喜欢
  • 2016-08-24
  • 2021-09-22
  • 2013-08-21
  • 2018-08-19
  • 1970-01-01
  • 2022-01-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多