0

我正在从 python 脚本中运行 grep,如下所示:

last_run_start = os.system("cat %(file)s | grep '[0-24]:[0-59]' | tail -n1" % locals())

拉出最后一个时间戳file。当我通过 Python 命令行执行此操作时,或通过常规终端使用该 grep 命令时,我得到了预期的结果 - 最后一行包含时间戳。

但是,当从此脚本运行时last_run_start返回:

18:23:45

0

是什么导致这个“0”出现,更不用说换行了?更重要的是,我怎样才能将其从中删除last_run_start

4

1 回答 1

5

os.system返回您运行的命令的退出代码,在这种情况下似乎为 0。

如果您希望使用或来自模块,则命令的输出直接进入stdout并且不存储在 中。last_run_startPopencheck_outputsubprocess

我想0最终会被打印出来,因为您正在某个地方打印last_run_start

于 2013-05-14T22:48:37.633 回答