yes, you are right. Thank you!!
Hello,
I would like to run stride(Protein secondary structure assignment http://webclu.bio.wzw.tum.de/stride/) for multiple files. I got the output for single file. But I get error when I use it for multiple files.
for single file
./stride 1crn.ent >output
for multiplefiles
for i in pdbfiles/*.ent;
do
./stride $i $i.stride;
done
Only one input file is allowed
I would like to know whether stride allows only single file? Is it possible to run stride with multiple files?
Your suggestions would be appreciated!!
2 answers
I think the problem is you missed >, which signifies the output of the program. Looping over nothing has to do with single input, If a program doesn't allows multiple inputs, that why we make a loop to run it one by one.
So, command would be :
for i in pdbfiles/*.ent; do ./stride $i > $i.stride; done
Cheers
You can also use the GNU/parallel command, which will run stride on multiple processes. This will be faster if you have more than one processor.
Example:
ls pdfiles/* | parallel 'stride {} > {}.stride'
Note that there is also another command called "parallel" in the moreutils package, included in most Linux distribution. The syntax of the GNU/parallel and the moreutils/parallel is slightly different, but you just have to read the man pages.
Log in to answer this question.
hey! How do I run the code from cmd of windows? It says the make.exe is not compatible for the 64-bits version! Thanks a bunch!