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

Исходное сообщение
"Сохранение в файл результата Bash"

Отправлено dboon , 02-Май-17 18:15 
Собственно хочу отсортировать более определенного количества и добавить в файл, отсортировать получается, а при записи выдает вот это.
66.249.76.127: No such file or directory
66.249.76.127
cat: 188.35.131.159: No such file or directory
188.35.131.159
cat: 212.164.95.16: No such file or directory
212.164.95.16
cat: 92.243.183.14: No such file or directory
92.243.183.14
cat: 91.239.126.75: No such file or directory
91.239.126.75
cat: 5.138.107.190: No such file or directory
5.138.107.190
cat: 83.220.236.254: No such file or directory
83.220.236.254

Нужно чтобы записывало ipшники в файл.

Сам скрипт
#!/bin/sh
if ! [ -f ./waitlist.txt ]
then
echo " " >waitlist.txt
fi

for strip in `awk '{print $1}' /var/www/httpd-logs/xxxxx.access.log | sort | uniq -c |sort -hr|awk '{if($1>1000){print $2}}'`

do
findd=`grep -e "$strip" waitlist.txt`
if [ -n $findd ]
then
<------>`cat $strip >> blacklist.txt`
<------>echo $strip
fi
done

помогите прозреть)


Содержание

Сообщения в этом обсуждении
"Сохранение в файл результата Bash"
Отправлено ыы , 02-Май-17 21:03 
>[оверквотинг удален]
> uniq -c |sort -hr|awk '{if($1>1000){print $2}}'`
> do
> findd=`grep -e "$strip" waitlist.txt`
> if [ -n $findd ]
> then
> <------>`cat $strip >> blacklist.txt`
> <------>echo $strip
> fi
> done
> помогите прозреть)

попробуйте так:
echo $strip >> blacklist.txt`


"Сохранение в файл результата Bash"
Отправлено ыы , 02-Май-17 21:04 
>[оверквотинг удален]
> uniq -c |sort -hr|awk '{if($1>1000){print $2}}'`
> do
> findd=`grep -e "$strip" waitlist.txt`
> if [ -n $findd ]
> then
> <------>`cat $strip >> blacklist.txt`
> <------>echo $strip
> fi
> done
> помогите прозреть)

попробуйте так:
echo $strip >> blacklist.txt


"Сохранение в файл результата Bash"
Отправлено dboon , 03-Май-17 14:18 
>[оверквотинг удален]
>> findd=`grep -e "$strip" waitlist.txt`
>> if [ -n $findd ]
>> then
>> <------>`cat $strip >> blacklist.txt`
>> <------>echo $strip
>> fi
>> done
>> помогите прозреть)
> попробуйте так:
> echo $strip >> blacklist.txt

в итоге сделали так
#!/bin/sh
cut -d' ' -f1 /var/log/httpd/access_log |
sort |
uniq -c |
grep -Po '^\s*\d{4,}\s*\K.*' |
grep -Fxvf whitelist.txt |
tee -a blacklist.txt