PROFphd
1、 分割文件 split.cpp
#include <iostream>
#include <string>
#include <fstream>
#include <stdio.h>
#include <string.h>
#include <math.h>
#include
<sstream>
using namespace std;
int main()
{
int name_num=0;
ifstream infile("name_protein.txt"); //输入文件
string line;
ostringstream filename; //用来存储名字
FILE *ofile;
while(getline(infile,line))
{
if(line[0]=='>')
{
name_num++;
filename<<name_num;
ofile=fopen(filename.str().c_str(),"w"); //打开文件 文件命名为1、2、3等
fprintf(ofile,"%s",line.c_str());
fprintf(ofile,"/n");
}
else
{
fprintf(ofile,"%s",line.c_str());
fclose(ofile);
filename.str("");
//free ofile;
}
}
free(ofile);
}
|
运行成功后,生成乐16623个文件,在linux下可用下述命令统计文件数
ls -l ./split|wc –l
##./split为存储所分割的文件的文件夹
2、 多序列预测
成功了!!!!!
mul_2.sh
#!/bin/bash
#dys
for ((i=1;i<=11;i++))
do
../../prof ./$i fileRdb="$i.out" sec //输入文件为"$i" , 输出为:"$i.out"
done
|
注:文件目录为
--prof-tmp
--prof
--prof (可执行文件)
--e
--split
--mul_2.sh (多序列预测)
运行:
nohup sh ./mul_2.sh &
查看结果:
ls –l ./split >result
或者 vim ./split/*.out
>sljdie
AFEOIEJFFEJFKIEJF
FOEJOIFEI
>jeojfij
SJOEJFEJFEIJ
JEOJWOJFLWJ
>feijfowji
FOEJIFJEIFJ
|
>
AFEOIEJFFEJFKIEJF
FOEJOIFEI
>
SJOEJFEJFEIJ
JEOJWOJFLWJ
>
FOEJIFJEIFJ
|
------------
à
command:sed 's/^>.*/>/g' file > result