Удаление строк с содержимым Linux - Форум успешных вебмастеров - GoFuckBiz.com - Страница 2
 
 
Форум успешных вебмастеров - GoFuckBiz.com

  Форум успешных вебмастеров - GoFuckBiz.com > Бизнес-решения > Скрипты, программы и технические решения
Дата
USD/RUB89.7026
BTC/USD68035.2947
Скрипты, программы и технические решения Обсуждаем скрипты, программы и новые технологии.

Закрытая тема
Опции темы Опции просмотра
Старый 13.05.2018, 08:01
Start Post: Удаление строк с содержимым Linux 
  #11
Soba
Senior Member
 
Регистрация: 02.05.2014
Сообщений: 628
Бабло: $257430
Question

Привет всем!
Есть файл в формате sql лежит в папке на сервере linux
В файле часто повторяется фраза test

Как удалить строки в которых содержится слово test?
Soba вне форума  
Старый 14.05.2018, 11:10   #12
IDL
Senior Member
 
Регистрация: 26.04.2014
Сообщений: 9,269
Бабло: $1189185
По умолчанию

Цитата:
Сообщение от Soba Посмотреть сообщение
Цитата:
Сообщение от IDL
уйдёт в фон
то есть в любом случае пока SED не переберет все строки надо ждать?
Не, можно консоль закрывать
он фоном на сервере уходит и всё

иногда tail -f делай посмотреть закончил он или нет

либо ps -ax | grep sed - посмотреть процесс висит в памяти или нет
__________________
Ахуенный КОНВЕРТ ФАРМЫ WORLDWIDE. забираем свежие инвайты на http://myinvites.xyz/ - Visa + MC. +50% в первую неделю.
IDL вне форума  
Старый 14.05.2018, 12:15   #13
roddik
Senior Member
 
Аватар для roddik
 
Регистрация: 12.01.2009
Сообщений: 346
Бабло: $86613
По умолчанию

Цитата:
Сообщение от Soba Посмотреть сообщение
Код:
sed -e '$s/,$/;/' file.txt
capturis, спасибо, бро!
но так выводится лог в реальном времени в баш и процесс занимает длительное время пока SED всё покажет (в моем случае 2 млн. строк)

можно ли как то убрать вывод лога?
Если тебе надо применять команду только на новые строчки в логе, то можно так

tail -f file.txt | sed -e '$s/,$/;/'

Хотя лучше бы ты написал, что именно ты хочешь сделать, было бы понятнее
roddik вне форума  
Старый 17.05.2018, 19:34   #14
capturis
Senior Member
 
Аватар для capturis
 
Регистрация: 25.11.2013
Сообщений: 272
Бабло: $47245
Отправить сообщение для capturis с помощью Telegram Отправить сообщение для capturis с помощью Jabber
По умолчанию

Цитата:
Сообщение от Soba Посмотреть сообщение
Цитата:
Сообщение от IDL
уйдёт в фон
то есть в любом случае пока SED не переберет все строки надо ждать?
То, что я тебе выше скинул - это конкретно на запрос замены последней строки. Сам посуди, sed регуляркой проверяет каждую строку, и если она последняя в файле, заменяет. Конечно для большого файла это не вариант. Попробуй просто переписать все строки кроме последней, а потом дописать туда последнюю с заменой.
Типа так:
Код:
#!/bin/bash
count=`cat  file.txt|wc -l`
ncount=$(( count - 1 ))
head -n $ncount file.txt > file2.txt
tail -n1 file.txt |sed -e 's/hello/fuck/i' >> file2.txt
На 10кк строк ~2 секунды.
capturis вне форума  
Старый 18.05.2018, 09:26   #15
IDL
Senior Member
 
Регистрация: 26.04.2014
Сообщений: 9,269
Бабло: $1189185
По умолчанию

Истинный олд-скул
__________________
Ахуенный КОНВЕРТ ФАРМЫ WORLDWIDE. забираем свежие инвайты на http://myinvites.xyz/ - Visa + MC. +50% в первую неделю.
IDL вне форума  
Старый 18.05.2018, 19:15   #16
capturis
Senior Member
 
Аватар для capturis
 
Регистрация: 25.11.2013
Сообщений: 272
Бабло: $47245
Отправить сообщение для capturis с помощью Telegram Отправить сообщение для capturis с помощью Jabber
По умолчанию

Offtopic
capturis вне форума