![]() |
Модераторы: korob2001, ginnie |
![]() ![]() ![]() |
|
Danissimo |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 150 Регистрация: 14.8.2006 Где: Санкт-Петербург Репутация: 1 Всего: 1 |
ВОТ ЭТО Я ВОШЕЛ! =)))
А вот, собсно, и вопрос. чем отличается open F, "< PlatformInfo"; my @x = <F>; open F, "PlatformInfo |" my @x = <F>; и my @x = `PelatformInfo`; где PlatformInfo -- исполняемый файл. |
|||
|
||||
amg |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1145 Регистрация: 3.8.2006 Где: Новосибирск Репутация: 38 Всего: 50 |
В 1-м случае в @x помещается содержимое файла PlatformInfo, а во 2-м и 3-м - то, что программа PlatformInfo печатает на экран при исполнении (по строкам, каждая строка - элемент массива).
|
|||
|
||||
Danissimo |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 150 Регистрация: 14.8.2006 Где: Санкт-Петербург Репутация: 1 Всего: 1 |
Ok, тогда чем отличаются второй и третий варианты? И чем они отличаются от четвертого:
? |
|||
|
||||
amg |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1145 Регистрация: 3.8.2006 Где: Новосибирск Репутация: 38 Всего: 50 |
Во втором варианте открывается поток, который в принципе можно обрабатывать по мере поступления, хотя, учитывая идущую следом строку (my @x = <F>;), этого не делается, и поэтому варианты 2 и 3 практически не отличаются (для меня). Возможно, есть какие-то тонкие различия, надо читать документацию.
Насчет 4-го варианта: perldoc -f system |
|||
|
||||
Danissimo |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 150 Регистрация: 14.8.2006 Где: Санкт-Петербург Репутация: 1 Всего: 1 |
Звучит более чем разумно. Зачот!
А по поводу perldoc -f system, так я б не спрашивал, если бы понял. То ли я привык к более формальной спецификации, то ли просто не привык к тому, как специфицируется Perl. В любом случае, читая perldoc, не складывается ощущения понимания, черт побери =) |
|||
|
||||
amg |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1145 Регистрация: 3.8.2006 Где: Новосибирск Репутация: 38 Всего: 50 |
system, в отличие от обратных кавычек или qx(), не возвращает вывод исполняемой программы.
Читай Lama Book (есть перевод на русский), там понятно написано. |
|||
|
||||
nitr |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2543 Регистрация: 10.2.2006 Где: Россия :) Репутация: 37 Всего: 84 |
к глубокому сожалению ;) Раз не помогают, значицца книжки... и о них писали ![]() |
|||
|
||||
UncleAndy |
|
|||
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 29.12.2010 Репутация: нет Всего: нет |
Вопрос в продолжение темы.
Как в данных случаях отловить ошибку при исполнении внешней программы? Где взять ее код возврата? |
|||
|
||||
arto |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1495 Регистрация: 31.10.2004 Репутация: 38 Всего: 40 |
perldoc -f system
perldoc -f close perldoc -v $? |
|||
|
||||
Aahen |
|
|||
Новичок Профиль Группа: Участник Сообщений: 1 Регистрация: 16.1.2011 Где: Москва Репутация: нет Всего: нет |
еще можно
-------------- палладий металл Это сообщение отредактировал(а) Aahen - 5.1.2020, 14:44 |
|||
|
||||
taryk |
|
||||||
![]() Новичок Профиль Группа: Участник Сообщений: 13 Регистрация: 16.1.2011 Где: Ukraine Репутация: нет Всего: нет |
это результат исполнения программы. exit-код находиться в переменной $?
|
||||||
|
|||||||
UncleAndy |
|
||||
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 29.12.2010 Репутация: нет Всего: нет |
[QUOTE=taryk,16.1.2011, 21:30]
Да, я именно про exit code. Спасибо. |
||||
|
|||||
![]() ![]() ![]() |
Правила форума "Perl" | |
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Perl: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |