셸 및 도달 가능성 테스트의 여러 방법
1. C 프로그램처럼
#!/bin / bash
...에 대한 ((i=1;나는<=100;나++))
하다
$i를 에코해
끝난
2 . 코드 블록
#!/bin / bash
나 때문에 {1..100}
하다
$i를 에코해
끝난
3. 시퀀스 모드
#!/bin / bash
`seq의 i에 대해 1 100`
하다
$i를 에코해
끝난
실행 결과
[루트 @ AMH ~]# bash for.sh
1
2
3
4
5
6
7
.
100
/opt/ip.txt에 대량의 IP를 삽입하세요. , 각 행마다 하나의 IP,
쉘 스크립트로 모든 IP 주소의 연결 가능성을 감지합니다..
#/bin / bash
`cat /opt/ip.txt`의 IP에 대해
하다
핑 $ip -c 2 >> /dev / null 2>&1
만약 [ $? -eq 0 ]; 그때
echo $ip가 작동 중입니다
그밖에
echo $ip가 다운되었습니다
있다
끝난
실행 결과
[root @ localhost ~]# 배쉬 ip_new.sh
10.8.37.67 일어나있다
10.8.20.35 일어나있다
10.8.23.223 일어나있다
10.8.23.43 다운되었습니다
10.8.39.19 다운되었습니다
10.8.24.95 다운되었습니다
10.8.20.63 일어나있다
10.8.14.207 다운되었습니다
10.8.23.59 다운되었습니다
이 스크립트의 내용을 풍부하게 합니다., 포트 여부 확인 36566 개업 중이거나
IP가 핑을 할 수 있다면 그렇지 않습니다.
#/bin / bash
패키지=`rpm -qa | grep ^nc-`
만약 [ $패키지 != `rpm -qa | grep ^nc-` ]; 그때
에코 “준비 중…”
냠 설치 nc -y >>/개발/널
그밖에
에코 “nc가 설치되었습니다”
있다
`cat /opt/ip.txt`의 IP에 대해
하다
핑 $ip -c 2 >> /dev / null 2>&1
만약 [ $? -eq 0 ]; 그때
echo -e $ip가 작동 중입니다. “\씨”
sshd_port=`nc -w 10 -z $ip 36566 | awk‘{인쇄 $7}’`
만약 [ “$sshd_port” == “성공했다!” ]; 그때
에코 “포트 36566 좋아요”
그밖에
에코 “포트 36566 오류”
바위
echo $ip가 다운되었습니다
있다
끝난
실행 결과
[root @ localhost ~]# 배쉬 ip_new.sh
nc가 설치되었습니다
10.8.38.35 위쪽 포트임 36566 좋아요
10.8.37.63 다운되었습니다
10.8.23.11 다운되었습니다
10.8.39.15 위쪽 포트임 36566 오류
10.8.23.43 위쪽 포트임 36566 좋아요
10.8.24.115 다운되었습니다
10.8.38.139 위쪽 포트임 36566 좋아요