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

Исходное сообщение
"Bash скрипт"

Отправлено SeB , 11-Сен-07 13:48 
Проблемка в чем. Мне нужно написать скрипт поиска строки в файле и замены ее на другую. Посоветуйте как енто делать?

Содержание

Сообщения в этом обсуждении
"Bash скрипт"
Отправлено Slimm , 11-Сен-07 13:58 
>Проблемка в чем. Мне нужно написать скрипт поиска строки в файле и
>замены ее на другую. Посоветуйте как енто делать?

sed тебе поможет


"Bash скрипт"
Отправлено SeB , 11-Сен-07 14:01 
>>Проблемка в чем. Мне нужно написать скрипт поиска строки в файле и
>>замены ее на другую. Посоветуйте как енто делать?
>
>sed тебе поможет

Понимаю что сэд мне поможет, да вот только не могу понять что мне с ним делать. Копировать все из файла в другой с нужной мне заменой, а потом возвращать обратно, или можно както найти и заменить*??????


"Bash скрипт"
Отправлено pasha , 11-Сен-07 14:05 
>Понимаю что сэд мне поможет, да вот только не могу понять что
>мне с ним делать. Копировать все из файла в другой с
>нужной мне заменой, а потом возвращать обратно, или можно както найти
>и заменить*??????

sed -i
edit files in place


"Bash скрипт"
Отправлено SeB , 11-Сен-07 14:19 
>>Понимаю что сэд мне поможет, да вот только не могу понять что
>>мне с ним делать. Копировать все из файла в другой с
>>нужной мне заменой, а потом возвращать обратно, или можно както найти
>>и заменить*??????
>
>sed -i
> edit files in place

sed -i  /./d /home/123.txt
Эта команда должна по идее удалить все строки содержащие точку. А удаляет все!!!!!!



"Bash скрипт"
Отправлено Slimm , 11-Сен-07 14:22 
>sed -i  /./d /home/123.txt
>Эта команда должна по идее удалить все строки содержащие точку. А удаляет
>все!!!!!!

ты мало прочитал про регулярные выражения
. означает любой символ
больше читай!


"Bash скрипт"
Отправлено SeB , 11-Сен-07 14:26 
>>sed -i  /./d /home/123.txt
>>Эта команда должна по идее удалить все строки содержащие точку. А удаляет
>>все!!!!!!
>
>ты мало прочитал про регулярные выражения
>. означает любой символ
>больше читай!

А как же мне тогда удалить строки содержащие точку??????????



"Bash скрипт"
Отправлено kernel_hacker , 12-Сен-07 14:37 
Ты блондин?

Прочитай man sed.

Точка - спецсимвол. А спецсимволы экранируются.


"Bash скрипт"
Отправлено SeB , 11-Сен-07 15:03 
>Проблемка в чем. Мне нужно написать скрипт поиска строки в файле и
>замены ее на другую. Посоветуйте как енто делать?

Или посоветуйте как удалить последнюю строку....



"Bash скрипт"
Отправлено Gennadi , 11-Сен-07 15:29 
>>Проблемка в чем. Мне нужно написать скрипт поиска строки в файле и
>>замены ее на другую. Посоветуйте как енто делать?
>
>Или посоветуйте как удалить последнюю строку....

sed `wc -l 123.txt | awk '{print $1}'`d


"Bash скрипт"
Отправлено SeB , 11-Сен-07 15:44 
>>>Проблемка в чем. Мне нужно написать скрипт поиска строки в файле и
>>>замены ее на другую. Посоветуйте как енто делать?
>>
>>Или посоветуйте как удалить последнюю строку....
>
>sed `wc -l 123.txt | awk '{print $1}'`d

Спасибо отцам скрипта =)