|
ru.unix.bsd- RU.UNIX.BSD ------------------------------------------------------------------ From : Oleg 2:5020/400 27 Sep 2002 16:05:44 To : All Subject : Перлозаменитель --------------------------------------------------------------------------------
Имеется некоторый скрипт на Перле, который выглядит так:
while ($tmp=<>)
{
$tmp=~s/^[ \t]*[\r\n]+$//; # это просто убираем пустые строки
# в случае вот такой последовательности заменяем ее пробелом
# т.е. этот перенос строки переносом не является
$tmp=~s/^\r\r\n$/ /;
print "$tmp";
}
Все это вызывается из шеллового скрипта, для обработки файлов, часто очень
больших.
Держать в дополнение к шелловому скрипту еще и перловый - некрасиво.
Хотелось бы написать эту обработку с использованием каких-то более других
средств, например, через sed, или еще как - но чтобы был один скрипт.
Hо насколько я понимаю - sed читает строки, не включая в них символ \n,
поэтому второе условие обработки никогда не будет выполнено, а оно
необходимо.
Переписывать шелловый скрипт на Перле тоже не очень красиво.
Кто чего подскажет?
--- ifmail v.2.15dev5
* Origin: Demos online service (2:5020/400)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.unix.bsd/195294faa4590.html, оценка из 5, голосов 10
|