mark74
Full Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Всем привет. Пишу скрипт-конвертер логов под Windows. Надо чтобы он обрабатывал параметры командной строки на подобие утилиты cat: Код: выведет все строки всех подходящих файлов одной непрерывной портянкой. Без подстановочных знаков, когда параметры - имена файлов, всё просто. В этом случае скрипт аналогичный по функционалу cat может выглядеть так: Код: while (<>) { # тут обработка строк, в нашем случае: print; } | вызов: Код: $ perl cat.pl raz.txt dva.txt tri.log | если при вызове указать подстановочный знак (*.txt) то произойдёт ошибка: Can't open *.txt: Invalid argument at cat.pl line 1. и это логично, судя по документации: Код: while (<>) { соответствует while ($ARGV = shift) { open(ARGV, $ARGV); while (<ARGV>) { | Наверняка это уже миллион раз решено. Где-нибудь в дистрибутиве перла возможно есть best practise. Народ, подскажите какой-нибудь хороший способ, если кто знает. PS эта проблема похоже только под Windows | Всего записей: 483 | Зарегистр. 25-01-2009 | Отправлено: 14:37 18-08-2015 | Исправлено: mark74, 19:26 18-08-2015 |
|