Thread system() in Perl mit multiplen Argumenten (15 answers)
Opened by LordK at 2016-07-03 14:59

Raubtier
 2016-07-03 20:47
#184995 #184995
User since
2012-05-04
1054 Artikel
BenutzerIn

user image
2016-07-03T17:39:50 hlubenow
Weiß' nicht, ob man auch ein Array übergeben kann, aber ich würde lieber einen String übergeben und den vorher genau im einzelnen zusammenbauen.
Code (perl): (dl )
1
2
3
my $execstr = "mafft $file.fasta infile 5 1";
print "$execstr\n";
# system($execstr);

Dem würde ich entschieden widersprechen. Warum soll man sich die Probleme mit dem Quoting einhandeln, wenn man die alle mit der ursprünglichen Aufruf system("mafft", @befehle); nicht hat? Auch da kannst du einfach mal das Array @befehle schnell ausgeben.

Wenn die uralte mafft-Doku, die ich eben mal ergooglet habe, noch richtig ist, dann lautet der Aufruf "mafft [optionen] infile" wobei optionen eigentlich alle mit -- anfangen. Außerdem bin ich über ein Kommandozeilenargument "\n" sehr verwundert, kenne eigentlich kein Programm, das sowas braucht.

View full thread system() in Perl mit multiplen Argumenten