원래 질문에 대한 답변을 얻었으므로 새 질문이 열려 있으므로 주제를 변경하고 싶지 않습니다. 나는 여러 개의 연결 두 개의 별도의 포트에 있지만 같은 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
난 할 노력하고있어 것은 열 1 경우를 인쇄 nestat 및 AWK입니다 함께 오는 모니터링하기 위해 노력하고
1001.1001.1001.1001 : 200은 출력에 경고의 2 배가 아닙니다. 10.1001.1001.1001에 연결이 하나도 누락되었다는 경고가 계속 표시되면
및 10.1001.1001.102 : 3000이 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
덕분에 @mbethke! 내 시스템에서 실행을 시도하고 아래 오류가 발생했습니다 : 'perlconnections.pl 줄에서 숫자 ge (> =)에 초기화되지 않은 값 사용 19. 병합 (.) 또는 perlconnections.pl의 문자열에서 초기화되지 않은 값 사용 101.101.101.101:2000 : 2 개의 연결이 필요합니다. 발견 된 숫자는 012 (192)입니다. pl 라인 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