2016-05-16 189 views
-3

我试图运行本地BLAST的命令行。我已经下载了软件包并允许每个文件和文件夹的权限。但是我仍然无法在页面上显示它的输出。无法使用php执行命令行

echo shell_exec("/opt/lampp/htdocs/blasto/bin/blastp -query /opt/lampp/htdocs/blasto/result/INF2dWxh -db /opt/lampp/htdocs/blasto/db/*.faa -evalue 10 "); 

希望任何人都可以帮助我。

回答

0

shell_exec只会返回标准输出。写入STDERR的任何错误消息都将丢失,除非您在命令末尾添加2>&1。这会将写入到STDERR(文件描述符#2)的任何内容重定向到STDOUT(文件描述符#1),该文件将由shell_exec返回并由echo显示。所以,试试这个...

echo shell_exec("/opt/lampp/htdocs/blasto/bin/blastp" 
    . " -query /opt/lampp/htdocs/blasto/result/INF2dWxh" 
    . " -db /opt/lampp/htdocs/blasto/db/*.faa" 
    . " -evalue 10" 
    . " 2>&1" 
); 
+0

我尝试以及与此--->的/ opt/LAMPP/htdocs中/ blasto /斌/ BLASTP出来:/opt/lampp/lib/libgcc_s.so.1 :版本'GCC_4.2.0'找不到(需要/usr/lib/i386-linux-gnu/libstdc++.so.6) –

+0

好消息!您现在有错误消息描述失败的原因。现在你比没有钱的时候好得多。 – BareNakedCoder

+0

感谢您的帮助。不知何故,我找到libgcc_s.so.1文件后得到了输出。 –