Python Shell:如何处理返回null的命令?

Python Shell:如何处理返回null的命令?,python,django,bash,shell,Python,Django,Bash,Shell,我正在编写一个shell脚本,它将在linux引导后自动启动django服务器 在写作时,我面临的一个问题是: 我正在执行一个命令:exec python manage.py makemigrations 此命令不返回检测到的更改。之后,我的脚本被终止 在这个命令之后,我想执行更多的命令。 有人能给出一些想法吗?为什么要使用exec,我认为您可以使用python manage.py makemigrations&,添加&在后台运行命令。只需使用python manage.py makemigra

我正在编写一个shell脚本,它将在linux引导后自动启动django服务器

在写作时,我面临的一个问题是:

我正在执行一个命令:
exec python manage.py makemigrations
此命令不返回检测到的更改。之后,我的脚本被终止

在这个命令之后,我想执行更多的命令。
有人能给出一些想法吗?

为什么要使用
exec
,我认为您可以使用
python manage.py makemigrations&
,添加
&
在后台运行命令。

只需使用
python manage.py makemigrations

exec
将终止当前shell并执行您的命令。执行完成后,您将无法返回到当前shell并丢失以下命令,这就是脚本终止的原因

如果以下命令相互独立,则可以使用
&
,这些命令将在后台同时执行,否则不需要
&

exec
将shell脚本进程替换为Python进程。一旦发生这种情况(假设它实际上可以执行新命令,这意味着
PATH
查找成功,并且
python
是可执行的),shell脚本的执行就消失了。如果您可能需要在shell脚本中执行其他操作,请不要使用
exec
。您所说的“null”是什么意思?程序(在Unix上)只能返回0到255之间的整数。为什么要使用
exec
?在bash命令行上,查看
help exec