Thread frage zu verwendung des "system" befehls
(5 answers)
Opened by lordy2008 at 2008-11-10 17:09
hi
ich verwende automatisiert mittels perl ein binary, das kommandline orientiert weitere eingaben zur laufzeit benötigt in der form: Code (perl): (dl
)
1 2 $cmd = "g_rms -f " . $f1 ." -s " . $f2 . " << Ende\n 1 << 1 << Ende"; system $cmd; also es wird 2 mal "1" eingegeben (in $f1 und $f2 stehen filenamen drinnen). das funktioniert auch wunderbar. zum problem wirds nur bei anderem befehl: Code (perl): (dl
)
1 2 $cmd = "make_ndx -f " . $f1 . " << Ende\n r ".$alpha1HelixStart. "-" .$alpha1HelixEnd. " << r " . $alpha2HelixStart . "-" . $alpha2HelixEnd." << q << Ende"; system $cmd; wobei in $alpha1HelixStart, $alpha1HelixEnd und 2 jeweils zahlen drinnen stehen das problem liegt darin, dass das programm make_ndx immer wieder eingaben verlangt obwohl es die eigentlich bekommen hat. wenn ich kommand ausgeben lasse schauts so aus: [unix] make_ndx -f singleFrameNr0System1.pdb << Ende r 47-78 << r 230-263 << q << Ende [/unix] ich denke das problem liegt an den abständen zwischen "r" und 47-78. aber ich weiß nicht recht wie ich es lösen soll, anführungszeichen helfen nicht (weder einfache noch doppelte) ... wenn ich das ganze langsam per hand auf command line eingebe dann geht es. aber die automatisierung mittels perl haut nicht hin im zweiten fall. kann mir da wer helfen? lg lordy |