LINUX.ORG.RU

Очень нужен баш скриптя =_=


0

2

Нужен bash скрипт,который выдирает из /var/log/auth.log только дату,логин и айпи адрес.Для построчной сортировки нужно использовать grep и для обработки вывода awk. Собственно,всё)

Ответ на: комментарий от Santar

man sed awk grep, вперёд и с песнями. Мы за тебя учиться не будем.

geekless ★★ ()
Ответ на: комментарий от Santar

40$ в студию - и будет тебе скрипт. Но мой тебе совет - читай умные книжки - полезнее будет и для мозгов, и для кармана.

Pinkbyte ★★★★★ ()

> построчной сортировки нужно использовать grep

Щито?

geekless ★★ ()

ЛОР очень редко помогает с таким...
А если и помогает, то иногда быдлокодом.
Попробуй лучше на codenet.ru / Студентам

Tanger ★★★★★ ()

Ты неправилньно поставил начальный вопрос, надо было что-то типа такого:
Хаха, на таких поделках линуксойдов как grep и awk даже нельзя выдрать только дату,логин и айпи адрес из /var/log/auth.log, без геморроя, ни то что в powershell, где такое делается за 2 секунды.

Novell-ch ★★★★★ ()

ЛОР то ли добр, то ли ленив. Человек так и просит всучить ему что-нибудь смертоносное, а никто и не пошевелился.

thesis ★★★★★ ()

записи о логине по ssh?

sdio ★★★★★ ()

>Очень нужен баш скриптя

Ну и напиши.

aedeph ()

Нужен bash скрипт,который выдирает из /var/log/auth.log только дату,логин и айпи адрес.Для построчной сортировки нужно использовать grep и для обработки вывода awk. Собственно,всё)

Имеется в виду выдрать записи о логине по ssh? Грепаем строку, авком выдираем нужные значения.

Feb 24 20:32:07 hostname sshd[2321]: Accepted password for username from 1.2.3.4 port 56191 ssh2
грепаем строку по «Accepted password», выдираем 1, 2, 9, 11 значения-соответственно дата, логин, ип
grep "Accepted password" /var/log/auth |awk '{print $1, $2, $9, $11};
получаем
Feb 24 username 1.2.3.4

Kadi ()
Ответ на: комментарий от madcore

madcore> зато бесплатно

И не поспоришь.

2all: Предлагаю конкурс на самое уродливое (работающее) решение

sdio ★★★★★ ()

мены читаем и делаем сами!

ipwww ★★ ()

>Для построчной сортировки нужно использовать grep

Это как?

proud_anon ★★★★★ ()
Ответ на: комментарий от Kadi

ну зачем так скучно... Под баш делать лениво, думаю комиссия конкурса примет решение на zsh

cat /var/logs/auth.log | while read line;do buffer=(${=line});echo $buffer[5] | grep -q sshd && echo $buffer[6] | grep -q Accepted && echo "$buffer[1] $buffer[2] $buffer[9] $buffer[11]" | awk '{print}';done

.

zolden ★★★★★ ()

Гыгыгы.

Вчера полез искать «Циклы, управляемые контрольным значением в C» и обнаружил, что все, у кого возникает такой вопрос, учатся по Дейтерам.

Hoodoo ★★★★★ ()
Ответ на: комментарий от zolden

хотя препод сразу просечёт что греп может читать со стандартного ввода...да и авк...и двойку влепит за быдлокод...
Держите на всякий случай соптимизированную версию. В лабораторных условиях работает на 27.35% быстрее первого варианта:

cat /var/logs/auth.log | while read line;do buffer=(${=line});grep -q sshd <<< $buffer[5] && grep -q Accepted <<< $buffer[6] && awk '{ printf "%s ", $0}' <<< $buffer[1] <<< $buffer[2] <<< $buffer[9] <<< $buffer[11];echo;done
zolden ★★★★★ ()

Подпишусь, авось кто-нибудь выложит код для одного эзотерического языка.

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