0
我開了一個新的問題,因爲我的原始人已經回答,不想改變主題。外殼腳本警報如果連接與相同的IP /端口掉落
我想監視多個連接進入兩個不同的端口,但具有相同IP的
例
netstat -an |grep 000
101.101.101.101:2000 ESTABLISHED
101.101.101.101:2000 ESTABLISHED
101.101.101.102:3000 ESTABLISHED
101.101.101.102:3000 ESTABLISHED
101.101.101.102:3000 ESTABLISHED
101.101.101.102:3000 ESTABLISHED
我試圖做的是nestat和awk打印第1列,如果1001.1001.1001.1001:200不在輸出2次比警報意義如果發生故障仍然提醒10.1001.1001.1001缺少一個連接
以及如果10.1001.1001.102:3000不打印正確打印4倍即使它存在3提醒在netstat的輸出MES:
這裏是我當前的代碼是所有好,除了IP只爲警告一次,存在不失信
connections=('101.101.101.101' '101.101.101.102')
running=($(netstat -an |grep 000 |awk '{print $1}'))
non_running=()
for process_name in ${connections[@]}; do
if [[ "${running[*]}" == *$process_name* ]]; then
echo "$process_name is running"
else
echo "$process_name is not running"
fi
done
Thanks @mbethke! 我試着在我的系統上運行,並得到以下錯誤: '在perlconnections.pl第19行中使用數字ge(> =)中的未初始化值。 在perlconnections.pl中使用未初始化值(。)或字符串第20行。 101.101.101.101:2000:需要2個連接,只能找到 在perlconnections.pl第19行的數字ge(> =)中使用未初始化的值。 在perlconnections中使用未初始化的值連接(。)或字符串。 pl line 20. 101.101.101.102:3000:需要5個連接,只能找到# – connollyc4
你是對的,我只尋找建立的連接,所以沒有必要。在我的實際環境中,我正在尋找第四個領域。我只是把它作爲第一個提出來簡化問題。我的netstat與你的看起來很像:tcp 0 0 172.30.252.100:39056 52.216.18.58:80 ESTABLISHED 2000/chrome' ' – connollyc4
你是對的,我沒有考慮過沒有連接的情況。我添加了一條防線。 – mbethke