The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"перезапись нужной строки"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Программирование под UNIX (Shell скрипты)
Изначальное сообщение [ Отслеживать ]

"перезапись нужной строки"  +/
Сообщение от natr (ok) on 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 либо я дурак, либо лыжи не едут.

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


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

А sed -- GNU?

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "перезапись нужной строки"  +/
Сообщение от natr (ok) on 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 переносит, сдвигает, что не приемлемо как и сед в примере выше?

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

3. "перезапись нужной строки"  +/
Сообщение от stereoPANDA email on 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


Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

4. "перезапись нужной строки"  +/
Сообщение от natr (ok) on 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

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

Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

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

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

Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру