在我运行程序的服务器上,默认编码是latin-1
,当我试图运行python脚本时,我得到了一个错误,如'latin-1' codec can't encode characters in position
等。
我知道您可以使用dpkg-reconfigure locales
更改默认语言环境,但对我来说,另一种方式更方便:
LANG=en_US.utf8 python3.11 main.py
现在的问题是:当我使用systemctl
运行脚本时,有没有办法放置LANG
?
我使用这个script.service
:
[Unit]
Description=My Script
After=syslog.target
[Service]
Type=simple
User=username
Group=sudo
WorkingDirectory=/home/username/project_dir/
ExecStart=/usr/bin/python3.11 main.py
[Install]
WantedBy=multi-user.target
1条答案
按热度按时间5gfr0r5j1#
如果您只想覆盖LANG变量,则可以在服务定义中添加
Environment
行,例如您还可以将
ExecStart
替换为env...