LINUX.ORG.RU

правка файлов через shell


0

0

есть некоторый файл /tmp/log в нем содержится очень много инфы, но нужно каждый час запускать скрипт, который бы отбирал из него строчки, в которых есть слово log, отправлял их в другой файл и удалял. Как сиё реализовать на shell?

anonymous

удалял имеется ввиду из /tmp/log

anonymous
()

cron(8); grep(1)

anonymous
()

grep log /tmp/log > another_file
sed -i '/^.*log.*$/d' /tmp/log

Добавляешь его в cron. Как именно - зависит от используемой реализации. А чтобы понять что происходит: man grep, info sed, man pcre.

naryl ★★★★★
()

Если после отбора строк файл /tmp/log не обнуляется, то каждый раз 
будут повторы (старые строки) + новые строки.

Если обнулять файл /tmp/log нельзя, то либо надо запоминать кол-во
строк в файле и в след. раз пропускать их или 
tail -f /tmp/log | grep 'log' > /tmp/new_log

sdio ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.