我不确定此bash脚本中的命令后&
是做什么的。
python alt_pg ${args} &
我正在修改的脚本的原始版本在命令开头没有使用'python',这与'&'有什么关系?
答案 0 :(得分:7)
&
在你的linux shell下的“background”中运行python alt_pg ${args}
;但是,脚本仍与shell关联。因此,如果shell停止,脚本也会停止。
附注:您可以使用nohup python alt_pg ${args} &
取消脚本与shell的关联。如果您生成这样的脚本,则在退出shell后脚本会一直存在。
答案 1 :(得分:3)
&符号在分叉/后台进程中运行该进程。
答案 2 :(得分:3)
不,它们是两个不同的东西。
运行python alt_pg ...
表示python
将查找$PATH
,alt_pg ...
将作为参数传递给python。然后Python查找名为alt_pg
的文件。运行alt_pg ...
表示alt_pg
将会查找$PATH
。后者可能会导致python无论如何运行,具体取决于alt_pg
的作用。
在命令后添加&
表示命令在后台运行,即使alt_pg
仍在运行,shell也可以继续执行命令。