在集群运行脚本(python,perl,sh)时会遇到一些错误。总结一下,以防手忙脚乱。(更新中)
很基础的,自己打字玩。
1. 明明已经安装了python的模块,运行的时候就是会报错找不到模块
比如
$ python filter.py >Musa_a
Traceback (most recent call last):
File "filter.py", line 1, in <module>
from Bio import SeqIO
ModuleNotFoundError: No module named 'Bio'
解决办法:在python脚本第一行添加#!usr/bin/python
,让脚本运行时解析到这是python脚本,从而正常运行。
2.perl类似的情况,
自己安装的perl模块不够用,或者安装了找不到,对于别人已经写好的脚本不容易修改。
解决办法:可以用类似上面的方法试试,或者可以另外写一个sh脚本运行时规定使用哪个路径下的perl(比如师兄的perl)
#!usr/bin/bash
unset PERL5LIB; export PATH=/shixiong/softs/perl-5.30.2/bin:$PATH
perl *&^*&^.pl
3.同样类似的,软件命令找不到的话
可以在~/.bashrc文件中添加PATH,有点像windows在桌面创建快捷方式。一般路径要到bin,系统会去bin的文件夹里面找运行的脚本(软件)
或者写一个sh脚本专门记录软件路径,和运行的命令。