|
|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Aleksey Pilyugin 2:5020/400 14 Apr 2004 16:11:40 To : Andrei Protasovitski Subject : Re: Результат работы скрипта. -------------------------------------------------------------------------------- Andrei Protasovitski wrote: > Доброго здоровья! > > Aleksey Pilyugin wrote: > >>>>> Как минимум, что уже "нет никакого $var" :) >>>> >>>> Есть. Проверял. >>>> test_1 >>>> #!/usr/bin/perl >>>> print "Tist result work test_1\n"; >>>> test >>>> #!/usr/bin/perl >>>> $result=exec("./test_1"); >>>> print "$result\n"; >>>> >>>> Результат: >>>> # ./test >>>> Tist result work test_1 >>>> И чего не должно было случится? >>> >>> Лучше спросить "что должно было случиться?" :) У тебя строку выдает >>> test_1. Перепиши test так: >>> #!/usr/bin/perl -w -- >>> use strict; >>> print "Calling test_1 via exec(): "; >>> exec("./test_1"); >>> print "done\n"; >>> Сравнить с результатом этого скрипта: >>> #!/usr/bin/perl -w -- >>> use strict; >>> print "Calling test_1 via exec(): "; >>> system("./test_1"); >>> print "done\n"; >> >> А зачем именно так? Работает как у меня, что ещё надо в рамках >> поставленного вопроса? >> Hадо будет по другому - не будут использовать exec. > > > Есть такой анекдот про сломанную рацию то ли на полупроводниках, то ли > на лампах, то ли на бронетранспортере. > > Так вот про бронетранспортер: > Мне нужно, чтобы в $var попало из test_1 только то, что test_1 выводит в > STDOUT, при этом в STDOUT ничего выводиться не должно! > Далее я беру эту переменную $var и анализирую, распарсиваю и пр... А чем собственно `script` не устаривает? Можно и так: open (XXX, "program |"); ... $var=<XXX>; И в случае с `program` и в случае с open вывод в stdout не происходит, а переменная $var получает то, что выводит скрипт. #!/usr/bin/perl $result=`./test_1`; $result=~/work/; print "Before=$` Result=$& After=$'\n"; # ./test Before=Tist result Result=work After= test_1 --- ifmail v.2.15dev5.3 * Origin: APSoft (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/343222de96e65.html, оценка из 5, голосов 10
|