­

conda第一步,你确定安装成功了吗?

  • 2019 年 10 月 4 日
  • 筆記

conda的下载和安装见conda或者见生信技能书推文conda管理生信软件一文就够 安装软件结束后,会出现三个done 但是也只能说明软件安装正常结束,但是不能说明软件能正常使用。 尤其有些需要调py的一些包的时候,会出错,或者python版本不兼容,在使用软件的时候,软件即会出现异常报错。

因此,这篇博文是为了你用conda安装常见软件后,如何确定软件安装正常可被使用!

安装列表

bwa  gatk4  sra-tools  fastqc  trim-galore  star  hisat2  bowtie2  subread  htseq  multiqc  samtools

安装方法

参考上面conda安装,这里直接push代码,就当回顾一下~

# 配置过镜像后,家目录下有一个.condarc文件,内容如下  $ cat ~/.condarc  channels:    - https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda    - https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge    - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free    - defaults  show_channel_urls: true    $ conda create -n rna python=2 -y  $ source activate rna  $ conda install -y sra-tools  # 默认装软件最新版

安装每一个软件和调取帮助文档

安装成功出现三个done + 成功调取这个软件的帮助文档=软件安装成功 问题是我怎么知道出来的帮助文档是对的,而不是报错??!!! 一般情况下,帮助文档的格式都是很统一的,左面是参数,右面是参数的英文解释,而且格式看着很整齐!一般为两列! 如果报错了,出来的内容不同于上面的信息,很乱,还会出现ERROR、NOT、exception等,但重点是你运行该软件的代码的时候,软件不能运行成功!!!! 每一款软件调用帮助文档的方式不同,这又给初学者带去了困扰,具体查看下面代码,希望能帮到你~

# 第一步别忘了激活环境  $ source activate rna    # 安装sra-tools  # 从ncbi下载sra,转化sra文件为fq  # conda安装sra-tools  $ conda install -y sra-tools    # 调取该软件的命令的帮助文档,下面两句是重点  $ prefetch --help  $ fastq-dump --help  $ which prefetch    # 运行结果示例如下  # /home/qmcui/miniconda2/envs/rna/bin/prefetch  # 可以看到这个命令确实你刚装的,而且存在于rna的小环境内bin的目录下  # 也可以不运行which这个命令~,但是当你软件报错的时候,你就要知道这个命令到底是装在哪里的~,就可以which一下!  # 后面格式同上    $ conda install -y bwa  bwa    $ conda install -y gatk4  gatk  $ gatk Tool --help    $ conda install -y fastqc  fastqc --help    $ conda install -y trim-galore cutadapt  trim_galore --help    $ conda install -y star  STAR --help    $ conda install -y hisat2  hisat2 -h  # 等同于hisat2 --help    $ conda install -y bowtie2  bowtie2 --help    $ conda install -y subread  featureCounts    $ conda install -y htseq  htseq-count --help    $ conda install -y multiqc  multiqc --help    $ conda install -y samtools  samtools  which samtools  # /home/qmcui/miniconda2/envs/rna/bin/samtools

写在最后的小技巧

1 如果我不知道我是不是安装过该软件,怎么办? 树曰:

  • 那就在运行一次安装呗,没关系,比如conda install -y htseq,结果如下,会出现“# All requested packages already installed.”。说明你已经安装过了,而且版本识最新版本了,conda就不会给你装了。
  • 也有一种情况,如果软件被更新了,conda会继续给你装一个最新版本,如果你介意两个版本的软件分析的结果,请不要更新~,那就意味着你不能运行conda install的安装代码了,那怎么办?
  • 那么就得直接回答上面的问题,查看这个软件的帮助文档,如果存在,which后,证明环境里确实已经安装,那么版本号怎么找,一般会在–help内看到该命令/软件的版本号,特殊的找不到的话,需要搜索咯
  • 如果你还想问,我想知道镜像里这个软件有没有更新,我都知道两种方法,比如conda search 软件名查看最新软件版本,比较一下~
  • 提示你更新conda,你可以不更新
$ conda install -y htseq  Solving environment: done  ==> WARNING: A newer version of conda exists. <==    current version: 4.5.11    latest version: 4.6.11  Please update conda by running    $ conda update -n base -c defaults conda    # All requested packages already installed.

2 安装过一款软件,我特别想知道他都载入了环境什么命令,能不能从服务器上查询到,这样的话我就不用记住安装过哪个软件,需要调取哪个命令的帮助文档啦???

树曰:

这个方法是有的,如果你上来就先看的这个问题,前面那么多的调取帮助文档的方法你都不用看了,甚至于这篇博文也不用看了,好尴尬,白写了,哈哈哈哈哈哈

前提,前提是你能找到下面图内的路径

# 这个路径肯定是自己的路径,需要替换  $ cd /home/qmcui/miniconda2/envs/rna/bin  $ ls -trlh  # 每次安装一个软件,最新时间戳生成的命令就是那个软件加载到环境内的命令!

备注:有没有一种情况,你已经装过了,时间戳也没了,怎么办,那你卸载了,重新装一遍呗!哈哈哈