python 使用 nohup 时脚本无法运行

python script fails to work when using nohup

我正在尝试使用以下语法执行 python 脚本

[root@staging bucket-sync]# nohup python main.py

这个脚本运行里面有以下命令:

import os
logging_directory = '/var/log/s3bucket'
os.system(f'mkdir {logging_directory}')

但在 nohup.out 中出现以下错误:

  File "main.py", line 20
    os.system(f'mkdir {logging_directory}')
                                         ^
SyntaxError: invalid syntax
  File "main.py", line 20
    os.system(f'mkdir {logging_directory}')
                                         ^

然而,当我 运行 没有 nohup 的脚本时,它工作得很好。

nohup 和 python 之间有关系吗?如果有,可以在某处配置吗?

这里可能会有猜测,但如果您在 运行 时指定 python3,它应该可以工作。

你从 python 2 得到这个错误,因为它不理解 f'' 字符串。