導航:首頁 > 凈水問答 > shell過濾日誌文件ip

shell過濾日誌文件ip

發布時間:2021-02-09 17:56:59

1. 怎麼用Linux 正則表達式過濾出IP地址

1、你可以通過AWK工具的正則表達式規則過濾 2、你可以能SED工具的正則表達式規則替換 3、你也可以用perl語言來過濾你的日誌文件 方法很多,看你的選擇

2. 如何用shell取出如下字元中的ip地址

[seesea@UC ~]$ cat b.txt
Failed password for adm from 58.248.38.108 port 21918 ssh2
Failed password for dds from 58.248.32.108 port 21918 ssh2
Failed password for invalid user student from 58.248.38.108 port 21918 ssh2
Failed password for invalid user stnt from 58.248.38.18 port 21918 ssh2
[seesea@UC ~]$ grep -oP '\d+\.\d\+\.\d+\.\d+' b.txt
[seesea@UC ~]$ grep -oP '\d+\.\d+\.\d+\.\d+' b.txt
58.248.38.108
58.248.32.108
58.248.38.108
58.248.38.18

3. linux 分析apache日誌,找的IP 屏蔽IP

|#!內/bin/bash
DATE=
while true
do
cat /var/log/virtualmin/all.log|容grep $DATE'|grep '/customer/account/createpost/'|cut -d ' ' -f 1 |sort |uniq -c | sort -nr |head -n 10|awk '{print $2}'

sleep 60
done

4. linuxshell代碼,將文本文件a中的內容ip=不固定的ip地址替換成ip=本機ip,其

ifconfig eth0 | grep "inet addr" | awk '{print $2}' | awk -F: '{print $2}'
上面是獲取eth0的IP地址

5. 用Linux Shell 腳本過濾IP地址192.168.0.100/29中的100和29,應該怎麼寫語句

過濾出來是幾個意思。
得到
192.168.0.100/29 還是
192.168.0.
還是
所有以100/29結尾的ip

6. shell命令。日誌中有若干個不同的IP地址,如何將這N個不同的IP地址,修改為127.0.0.1. seed命令如何寫

##測試文抄件,裡面有襲4條IP和其他數據
catb.sh
123.213.123.12312312312312312312312dsasdw
213.23.213.123rwerwer24osdjfdgds
42.324.123.123fsdfasdasda
123.231.54.23dfsfsdfdsf
##執行指令
sed-i's/[0-9]*.[0-9]*.[0-9]*.[0-9]*/127.0.0.1/g'b.sh
#結果驗證
catb.sh
127.0.0.112312312312312312312dsasdw
127.0.0.1rwerwer24osdjfdgds
127.0.0.1fsdfasdasda
127.0.0.1dfsfsdfdsf

7. shell腳本,實現腳本ip地址變換,每次輸出不同的ip地址。

先看效果:

[root@mailtmp]#./runplayload.shiplist.txt-s192.168.33.34-40
Nosuchip【192.168.33.35】in【iplist.txt】
1--192.168.33.34
2--192.168.33.36
3--192.168.33.37
4--192.168.33.38
5--192.168.33.39
6--192.168.33.40
[root@mailtmp]#./runplayload.shiplist.txt-s192.168.33.34-192.168.33.40
Nosuchip【192.168.33.35】in【iplist.txt】
1--192.168.33.34
2--192.168.33.36
3--192.168.33.37
4--192.168.33.38
5--192.168.33.39
6--192.168.33.40
[root@mailtmp]#


看一下.txt文本格式

[root@mailtmp]#catiplist.txt
192.168.33.34
192.168.33.36-192.168.33.40
192.168.33.200
192.168.33.204-210
192.168.33.231


腳本正文:

#!/bin/bash
#------------------------------------------
#Copyritht(C),[email protected]
#腳本名:
#腳本位置:
#腳本用途:
#腳本修改歷史:
#<作者><日期><版本><描述>
#老耿2015/07/131.0創建
#版權:GPL
#-------------------------------------------
./root/.bash_profile
#定義ip個數
r=6
#傳參判斷
echo$3|grep-q"[0-9]-[0-9]";stat=$?#這里在邏輯上應該先判斷存不存在$3
if[$#-ne3-o"$2"!="-s"-o${stat}-ne0];then
if[$stat-ne0];then
echo"腳本使用說明:
COMMAND文件名-sip范圍
例:sh./run_playload.shiplist.txt-s192.168.33.20-50
或sh./run_playload.shiplist.txt-s192.168.33.20-192.168.33.50"
exit
fi
fi
if[!-f$1];then
echo"文件【$1】不存在!"
exit
fi
#iplist.txt文件格式轉換
iplist=`cat$1|awk-F'[-.]''{if($0~/-/){sub(/-.*$/,"",$4);for(i=$4;i<=$NF;i++){print$1"."$2"."$3"."i}}elseprint$0}'`
#xx.xx.xxipv4前三個位元組
ip1="`echo$3|sed-r's/.[0-9]+-.*$//'`"
#起始ip最後一個位元組
ip2="`echo$3|awk-F'.''{sub(/-.*$/,"",$4);print$4}'`"
#結束ip最後一個位元組
ip3="`echo$3|awk-F'[-.]''{print$NF}'`"
#如果起始ip大於結束ip,則兩個互換
if(($ip2>$ip3));then
ip_tmp=$ip2
ip2=$ip3
ip3=$ip_tmp
fi
#合並完整的ip,存在ip()里
ip=()
foriin`seq${ip2}${ip3}`
do
ipp="${ip1}.${i}"
echo"${iplist}"|grep-wq"${ipp}"
if[$?-ne0];then
echo"Nosuchip【${ipp}】in【$1】"
else
ip=(${ip[*]}${ipp})
fi
done
#判斷ip()不為空的情況
if[-n"${ip[*]}"];then
#定義ip個數
#r=6
#判斷ip取值個數,分兩種情況處理
if((${r}<=${#ip[@]}));then
foriin`seq${r}`
do
letj=$i-1
echo"${i}--${ip[j]}"
done
else
for((i=0;i<${#ip[@]};i++))
do
letj=$i+1
echo"${j}--${ip[i]}"
done
echo"WARNING:受范圍限制,未能取到完整的${r}個ip!"
fi
fi

8. 求救用SHELL 實現,access.log日誌中將IP為10.1.0.10的信息取出存在到save.log文件中,並加入定時任務.

1:「IP為10.1.0.10的信息」 採用查找關鍵字"10.1.0.10」的方式,即:grep "10.1.0.10" $HOME/access.log >> $HOME/save.log ;文件路徑換成你自己的
2:將這句話加內入定時任務:編輯容crontab,執行命令:crontab -e,編輯時操作參考vi編輯器,追加一行:* * * * * grep "10.1.0.10" $HOME/access.log >> $HOME/save.log,其中前幾位周期控制含義參考crontab的使用。這句話表示每隔1分鍾都運行一次.

9. linux shell中字元串匹配截取IP

你這個可用多個方法,最簡單的可用grep

s="Connections: authenticated: 10.0.115.172::56498, as admin (Full access)"
echo $s | grep -E -o "[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+::[0-9]+"
結果
10.0.115.172::56498
這個正則相關的學習,對於學習Linux來說也是非常重專要屬的,劉老師的新書《linux就該這么學》,關於這塊講解得非常透徹,你可以翻閱查看一下。

10. 在shell中如何判斷字元串是否為有效的IP地址

|CheckIPAddr()
{
echo $1| "^[0-9]\{1,3\}\.\([0-9]\{1,3\}\.\)\{2\}[0-9]\{1,3\}$" > /dev/null;
#IP地址必須為全數字
if [ $? -ne 0 ]
then
return 1
fi
ipaddr=$1
a=`echo $ipaddr|awk -F . '{print $1}'` #以"."分隔,取出每個列的值
b=`echo $ipaddr|awk -F . '{print $2}'`
c=`echo $ipaddr|awk -F . '{print $3}'`
d=`echo $ipaddr|awk -F . '{print $4}'`
for num in $a $b $c $d
do
if [ $num -gt 255 ] || [ $num -lt 0 ] #每個數值必須在0-255之間
then
return 1
fi
done
return 0
}
if [ $# -ne 1 ];then #判斷傳參數量
echo "Usage: $0 ipaddress."
exit
else
CheckIPAddr $1
fi

閱讀全文

與shell過濾日誌文件ip相關的資料

熱點內容
山東全自動污水提升器購買 瀏覽:689
除垢後外壁結塊 瀏覽:188
杭州線路板廠廢水處理多少錢 瀏覽:315
飲水機晚上關電源會怎麼樣 瀏覽:667
凈水器只有廢水不出水怎麼回事 瀏覽:965
合成樹脂成品排水溝 瀏覽:689
廢水廢氣日常檢查 瀏覽:164
怎麼擦玻璃去水垢 瀏覽:392
藍光車載凈化器多少錢 瀏覽:74
蒸餾裝置基本儀器 瀏覽:472
反滲透凈水器和桶裝水 瀏覽:500
可拆卸離子交換樹脂濾芯 瀏覽:202
沁園直飲凈水器怎麼樣 瀏覽:855
女生用自動回復逗你怎麼回 瀏覽:79
河道清淤廢水 瀏覽:248
不排放廢水怎麼處理 瀏覽:537
小型手提蒸餾提液機 瀏覽:320
無電凈水器怎麼安裝泵 瀏覽:599
丁M一體化中水回用沒備 瀏覽:477
飲水管怎麼接凈水機 瀏覽:100