[EMBOSS] Wildcard problem

Peter Rice ricepeterm at yahoo.co.uk
Tue Jan 29 11:20:08 UTC 2013


On 29/01/2013 10:19, Stefanie Lager wrote:
> Hi,
>
> I have a wildcard problem, which I don't know if it's really an EMBOSS
> problem? I try to run e.g.

It is a shell problem .. but it does show up another EMBOSS problem.

> seqret *.seq:seqname
>
> And this works fine on a linux machine in bash with Emboss 6.3.1, but
> it does not work in linux running tcsh with Emboss 6.5.7.0
>
> "seqret: No match."
>
> Has anyone seen any similar problem?

That would be a shell problem, not an EMBOSS problem.

Using tcsh the shell tries to expand *.seq into a list of filenames on 
the command line.

This can give unwanted effects, for example with two files matching 
*.seq you could get a valid seqret command line where the second file 
becomes the output file and is overwritten (note that seqret has a valid 
output file name and does not prompt for an output file in the example 
below).

% ls -l *.seq
total 2
-rw-r--r-- 1 pmr None 30 Jan 29 10:45 abc.seq
-rw-r--r-- 1 pmr None 26 Jan 29 10:45 xyz.seq
% seqret *.seq
% ls -l *.seq
total 2
-rw-r--r-- 1 pmr None 30 Jan 29 10:45 abc.seq
-rw-r--r-- 1 pmr None 30 Jan 29 10:48 xyz.seq

The solution should be to put quotes around any wildcards - in filenames 
or in any other options, because the shell may try to expand them into 
filenames.

However, if you put quotes around the "*.seq" wildcard filename to keep 
the shell form interpreting it, EMBOSS fails to read the sequence. It 
should be able to find the identifier 'seqname' in one of the files. 
This worked in EMBOSS 6.3.1 but seems to have been broken when the query 
language was rewritten.

I will take a look and make a patch for the latest release any other 
releases affected.

regards,

Peter Rice
EMBOSS Team



More information about the EMBOSS mailing list