URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 9514
[ Назад ]

Исходное сообщение
"перезапись нужной строки"

Отправлено natr , 31-Июл-12 21:47 

BSD 8.1

Есть файл с данными в виде

2012.07.11 00:00;0.0075;381
2012.07.11 04:00;0.0083;544
2012.07.11 08:00;0.0074;1181
2012.07.11 12:00;0.0061;2395
2012.07.11 16:00;0.0067;3100
2012.07.11 20:00;0.0037;3102

Никак не могу догнать как с помощью sed перезаписывать нужную мне строку полностью (например только вторую), строка может быть пустой, т.е. ее нужно создать. Реально ли это? Попробовал манипуляции с sed -i либо я дурак, либо лыжи не едут.


Содержание

Сообщения в этом обсуждении
"перезапись нужной строки"
Отправлено Andrey Mitrofanov , 31-Июл-12 22:18 
> BSD 8.1
> Никак не могу догнать как с помощью sed

А sed -- GNU?


"перезапись нужной строки"
Отправлено natr , 01-Авг-12 09:55 
>> BSD 8.1
>> Никак не могу догнать как с помощью sed
> А sed -- GNU?

Читаем текст полностью. Здесь мануал (http://www.gnu.org/software/sed/manual/sed.html) незначительно отличается синтаксисом, мне нужно определенный вывод тупо писать в нужный номер строки(первоначально с ее созданием), без замены, сдвига и т.д. ШеллСкрипт это хоть умеет вместе с седом sed -i 'i data' file?

awk (F)NR переносит, сдвигает, что не приемлемо как и сед в примере выше?


"перезапись нужной строки"
Отправлено stereoPANDA , 01-Авг-12 12:45 
[root@xen]# cat 1 | sed '2 s/^.*$/some stuff in the second line/'
2012.07.11 00:00;0.0075;381
some stuff in the second line
2012.07.11 08:00;0.0074;1181
2012.07.11 12:00;0.0061;2395
2012.07.11 16:00;0.0067;3100
2012.07.11 20:00;0.0037;3102



"перезапись нужной строки"
Отправлено natr , 01-Авг-12 13:12 
> [root@xen]# cat 1 | sed '2 s/^.*$/some stuff in the second line/'
> 2012.07.11 00:00;0.0075;381
> some stuff in the second line
> 2012.07.11 08:00;0.0074;1181
> 2012.07.11 12:00;0.0061;2395
> 2012.07.11 16:00;0.0067;3100
> 2012.07.11 20:00;0.0037;3102

Спасибо, теперь дошло, нужно было применить правильную регулярку.


"перезапись нужной строки"
Отправлено stereoPANDA , 01-Авг-12 14:37 
> Спасибо, теперь дошло, нужно было применить правильную регулярку.

Обращайтесь.(=