Here is a collection my smart shell and perl scripts. Feel free to download and use my solutions. All software distributed through this page is free for non-commercial use and copying.

  • blastgrep – This utility allows you to grep for pattern matches but on query-basis in BLAST reports. So, if you would like to find all queries that has found a sequence which description matches the pattern “photosystem”, you type “blastgrep -i blast_report_file -e ‘photosystem’ -o query” and you get a list of which queries that have such matches. Tested on BLAST 2.2.23, and should work on all other versions of BLAST 2.
    Download (version 1.0.2)
  • extract_wanted_gi – A perl script to cut out sequences that fulfil certain e-value and score criteria from a hmmsearch output file. Not tested with HMMER3 (yet).
  • excel_ready_from_fasta – A perl script to convert a FASTA-file into a tabulated list of GI, accession ID and organism data, which makes Excel (and other table-handling softwares) happy.
  • – A shell scripts that prepares a SILVA SSURef release FASTA-file into a database for use with Metaxa, see this post for more info.

Installation instructions

  1. You may have to right-click the links to download the files.
  2. After download, move the files to a place where your unix-like system finds executables (like /usr/local/bin). Personally I have added a directory called “bin” in my home folder to my PATH and usually to put scripts and things there.
  3. When the file is in place, move into that directory and type:
    chmod 744 name_of_the_downloaded_file
    where “name_of_the_downloaded_file” should be replaced with the name of the downloaded file, e.g. “blastgrep”
  4. From now on, you should be able to call the script from anywhere in your system, just as a usual Linux/Unix command.
  5. For most of my scripts and programs, help and instruction for usage can be found by using the -h flag.

Comments, questions, beers, pizzas, cakes, fruit pies, job positions and other types of feedback to my e-mail address:firstname.lastname [at] (and my name is, as usual, Johan Bengtsson).