如何在后台使用tqdm运行脚本

时间:2017-04-11 16:17:07

标签: python tqdm

这是一个使用tqdm进度条的简单脚本:

from tqdm import tqdm
from time import sleep

for i in tqdm(range(10000)):
  sleep(1)

有时我想让它在我的服务器上运行并退出。当然,在那些情况下,我对看到进度条并不感兴趣。我这样做:

$ python mytest.py &
$ disown
$ exit

但是一旦我退出,过程就会停止。为什么会发生这种情况以及如何应对呢?

1 个答案:

答案 0 :(得分:1)

我认为答案可能会提到here

调用B=np.zeros((400,300,60)) C=np.zeros((400*300*60)) B=np.amax(A,axis=3) A=np.ravel(A) A=A.tolist() B=np.ravel(B) B=B.tolist() for i in range(0,400*300*60): C[i]=A.index(B[i]) 使完全断开进程与终端的连接。由于disownsys.stdinsys.stout是从shell继承的,如果终端被销毁,脚本会在尝试打印到标准错误时失败,{{1}试图这样做。

我不知道你是在运行子shell还是sys.stderr命令会破坏终端。如果后者是真的,那么这可以解释为什么该过程终止。您也许可以尝试redirect所有终端输出到tqdm,看看是否有帮助?