Nohup与Anaconda ipython失败了

问题描述 投票:0回答:1

我正在尝试使用Anaconda IPython的“nohup”命令运行代码。如果我在ipython环境中运行它,我的代码运行正常(几个小时);

irsacf00-debian:~/WISE_AP> ipython
Python 3.6.4 |Anaconda, Inc.| (default, Jan 16 2018, 18:10:19) 
Type 'copyright', 'credits' or 'license' for more information
IPython 6.2.1 -- An enhanced Interactive Python. Type '?' for help.

In [1]: %run WISE_PHOT_052918_MODULER_IRSACF.py

但是,当我尝试使用“nohup”运行相同的代码时,它会出现以下错误消息(最后2行)。这是从输出文件粘贴的副本。

[[0;31mOSError^[[0m: [Errno 5] Input/output error

In [2]: Do you really want to exit ([y]/n)?

我的nohup命令看起来像这样;

irsacf00-debian:~/WISE_AP> nohup ipython <input_file> output_file &

我的输入文件看起来像这样;

%run /home/aprakash/WISE_AP/WISE_PHOT_052918_MODULER_IRSACF.py 

我无法弄清楚代码卡在哪里。感谢帮助!

现在最好

linux python-3.x anaconda nohup
1个回答
0
投票

每当Anaconda环境启动时,它都会粘在你的shell上,使ipython可用。 (对于默认环境也是如此。)nohup的任务是从你启动它的shell中分离一个进程。

执行以下操作:编写一个shell脚本,首先将conda绑定到其shell,然后使用ipython启动程序。请注意,conda不支持所有shell,因此请使用bash。我的版本看起来像这样:

#!/bin/bash
source /home/yOURuSERnAME/miniconda3/etc/profile.d/conda.sh
conda activate YourCondaEnvironment
ipython SomeProgramOfYours.py

(第一行强制执行必要的conda兼容shell。第二行我自己得到了from Stackoverflow :) Here是另一种结合第三行的方式。第四行就是你在自己的尝试中给出的nohup。)

保存为Filename.sh,开始使用nohup:

chmod +x Filename.sh
nohup ./Filename.sh &
© www.soinside.com 2019 - 2024. All rights reserved.