그래서 하나의 스크립트에서 3개의 별도의 디스코드 봇을 함께 실행하려고 합니다.
start.sh 스크립트는 다음과 같습니다.
node spamprevention/index.js > logs/spamprevention.log 2>&1 &
node reportbot/index.js > logs/reportbot.log 2>&1 &
python main.py
while :; do
sleep 5
done
해당 디렉토리에는 & 폴더와 및 파일이 있습니다 pi@tradehubrpi:~/discordbots/trade-hub-secret-agent
. 이 스크립트를 시작하기 위해 터미널에 입력했습니다.spamprevention
reportbot
start.sh
main.py
bash start.sh
이것은 로그입니다.
pi@tradehubrpi:~/discordbots/trade-hub-secret-agent $ bash start.sh
start.sh: line 1: logs/spamprevention.log: Permission denied
start.sh: line 2: logs/reportbot.log: Permission denied
Traceback (most recent call last):
File "main.py", line 13, in <module>
from discord import * # import library
File "/home/pi/discordbots/trade-hub-secret-agent/discord/__init__.py", line 21, in <module>
from typing import NamedTuple, Literal
ImportError: cannot import name 'Literal' from 'typing' (/usr/lib/python3.7/typing.py)
^C
pi@tradehubrpi:~/discordbots/trade-hub-secret-agent $ sudo bash start.sh
Traceback (most recent call last):
File "main.py", line 10, in <module>
import aiohttp
ModuleNotFoundError: No module named 'aiohttp'
2개의 자바스크립트 봇은 잘 실행되고 있지만 Python 봇에서는 ModuleNotFoundError
.python main.py
아시다시피 저는 개발자가 아닙니다. 간단한 해결책이 있습니까? (Raspberry Pi 4에서 실행)
편집; 실행 로그가 없습니다 python main.py
. 이는 올바르게 실행되고 일부 작업 유형에 오류나 불일치가 있는 경우 로그에 표시된다는 의미입니다.
실행할 때 sudo python main.py
이것을 반환하십시오 .
pi@tradehubrpi:~/discordbots/trade-hub-secret-agent $ sudo python main.py
Traceback (most recent call last):
File "main.py", line 13, in <module>
from discord import * # import library
File "/home/pi/discordbots/trade-hub-secret-agent/discord/__init__.py", line 21, in <module>
from typing import NamedTuple, Literal
ImportError: cannot import name 'Literal' from 'typing' (/usr/lib/python3.7/typing.py)