当前位置: 首页 > news >正文

ubuntu(18.04) 安装 blast 并在php中调用

1、下载

https://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/LATEST/


2、解压,配置环境变量

tar zvxf ncbi-blast-2.14.1+-x64-linux.tar.gz解压后改名为 blast

 配置环境变量,可以不配置 使用的时候直接绝对路径使用(本次使用绝对路径)

vim ~/.bashrc  将下面添加道最后, dir 是解压文件所在的绝对路径,export BLAST_HOME=/dir/blast
export PATH=$PATH:/dir/blast/bin使配置生效source ~/.bashrc测试安装结果blastn -version 如果显示版本信息则说明可正常使用


3、创建数据库


在/dir/blast 下创建文件夹 db/mydb  用来存放不同的数据库

构建数据库:initdb.fasta 是用来构建数据库的源文件


#绝对路径调用,直接使用makeblastdb命令调用可能出现找不到命令的问题,可能是环境变量没有配置好/dir/blast/bin/makeblastdb -in /dir/blast/db/mydb/initdb.fasta -dbtype prot

结果:

4、测试搜索  test.fasta 是测试序列文件

#采用绝对路径调用#结果输出到终端/dir/blast/bin/blastp -query /dir/blast/output/test.fasta -db /dir/blast/db/mydb/initdb.fasta -outfmt 6#结果输出到文件/dir/blast/bin/blastp -query /dir/blast/output/test.fasta -db /dir/blast/db/mydb/initdb.fasta -outfmt 6 -out /dir/blast/output/test

结果:

5.在php中调用

//通过blast获取targetID,然后通过targetID获取详细信息
$input_sequence = $data_json['sequence'];  // 从用户前端输入的序列
$file_name = uniqid() . ".fasta";
// 创建临时文件
$tempFile = tempnam("/tmp", $file_name);
//将用户输入的文件写入到临时文件,blast的输入条件只找到了文件输入,不知道可不可以其他形式输入
file_put_contents($tempFile, $input_sequence);
// 执行 BLAST 查询
$output = shell_exec("/dir/blast/bin/blastp -query " . $tempFile . " -db /dir/blast/db/mydb/initdb.fasta -outfmt 6");echo $output;

http://www.lryc.cn/news/213105.html

相关文章:

  • UML—时序图是什么
  • 【每日一题Day364】LC2003每棵子树内缺失的最小基因值 | dfs
  • 调试记录 单片机GD32F103C8T6(兆易创新) 程序烧写完成但是没有现象 (自己做的板子)
  • Leetcode刷题笔记--Hot91--100
  • 算法训练一——链表
  • 【JAVA】类与对象的重点解析
  • ES6对象扩展
  • docker应用部署---Tomcat的部署配置
  • TestCenter测试管理工具
  • 索引切片复习
  • 想入门网络安全,这些前置准备要做好!
  • Spark新特性与核心概念
  • 设计模式_状态模式
  • css 某个元素被挤的显示不完整,如何显示完整
  • pve lxc debian 11安装docker遇到bash: sudo: command not解决办法
  • springboot的缓存和redis缓存,入门级别教程
  • 语雀P0级时间爆发,留给运维的时间不多了?
  • LeetCode 2401.最长优雅子数组 ----双指针+位运算
  • NOIP2023模拟6联测27 无穷括号序列
  • java spring cloud 工程企业管理软件-综合型项目管理软件-工程系统源码
  • openEuler 22.03 x86架构下docker运行arm等架构的容器——筑梦之路
  • 【Java】HashMap常见的面试题
  • openpnp - src - 配置文件载入过程的初步分析
  • 中国各城市土地利用类型(城市功能)数据集(shp)
  • Linux网络编程:数据链路层
  • python 线程 超时时间
  • LeetCode:274. H 指数、275. H 指数 II(C++)
  • 多线程及锁
  • C++ 写一个Data类的注意问题
  • postman做接口测试