есть файл кодировка DOS
сейчас в нем
колличество строк не ограничено как его конвертировать в формат
по 79 байт в строке
есть файл 1.txt
$cat 1.txt
На рабочем столе для каждого пользователя присутствует ярлычок какой-нить красочный. Допустим, происходит обрыв связи. У меня этот момент отлавливается через ннкрон и если связи нет - убивает все процессы, связанные с СМ. Далее, после восстановления связи
...cut
нужно сделать перенос каждой строки в положении 79 символ конец данной строки
80 символ новая строка и так далее по тексту
получаем:
На рабочем столе
для каждого поль
зователя присутс
твует ярлычок ка
кой-нить красочн
ый.
и каждую новую строчку закрыть в кавычки ""
"На рабочем столе"
"для каждого поль"
"зователя присутс"
"твует ярлычок ка"
"кой-нить красочн"
"ый. "
помогите кто знает
perl
>perlа подробнее
я набросал такое
#!/bin/perl -wopen FH, "<", "1.txt";
$l = <FH>;
$position=tell(FH);
seek(FH,$position+10,1);print "\"$l\"";
print $position;
close FH;
но как добавить бы перенос по строчно строка и 60 символов в ней и так переносило чтоб
N - требуемая длина1: читаем строку в строковый буфер (while EOF)
2: отсекаем \n
3: конкатинируем с предыдущей прочитанной (если такая имеется)
4: длина буфера > N ?
нет : goto 1
да : отсекаем N, добавляем \n, записываем в выходной файл
>N - требуемая длина
>
>1: читаем строку в строковый буфер (while EOF)
>2: отсекаем \n
>3: конкатинируем с предыдущей прочитанной (если такая имеется)
>4: длина буфера > N ?
> нет : goto 1
> да : отсекаем N, добавляем \n, записываем в выходной файл
>
>все понятно но как вот в чем вопрос я с перлом не особо(
а примером кода не могли бы продемонстрировать
Спасибо.
>[оверквотинг удален]
>> нет : goto 1
>> да : отсекаем N, добавляем \n, записываем в выходной файл
>>
>>
>
>все понятно но как вот в чем вопрос я с перлом не
>особо(
>
>а примером кода не могли бы продемонстрировать
>Спасибо.примеры построчного чтения для readlline - см в мануале
chomp - отрезка конца
. - конкатенация
>[оверквотинг удален]
>>
>>все понятно но как вот в чем вопрос я с перлом не
>>особо(
>>
>>а примером кода не могли бы продемонстрировать
>>Спасибо.
>
>примеры построчного чтения для readlline - см в мануале
>chomp - отрезка конца
>. - конкатенациянабросал примерно
open F, "<lolo" or die "Can't open!";
@f=<F>;for($i=0; $i<=$#f; $i++) {
$f[$i] =~ s/(.{75})/"$1"\n/g;
print "$f[$i]\n";
}
close F;но он не отрабатывает если в тексте попадается точка(( как обойти
пользовался также
use Text::Wrap
сним получше ,но он умеет только ставить кавычку вначале а в конце нет(
скрипты, перлы... в vim три кнопки нажать$vim file
gqG:help gq
>скрипты, перлы... в vim три кнопки нажать
>
>$vim file
>gqG
>
>:help gqнажать != автоматизация
Не-е-е, правильный ответ ~~ "emacs --batch ..." со скриптом %->
проще разобраться с перл ))