Search
🔎

로그 파일 내 특정 IP 검출 쉘 스크립트

1.
파일 생성
vi check.sh
Bash
복사
#!/bin/bash LOG_FILE="access.log-20250401" # 로그 파일명으로 수정하세요. OUTPUT_FILE="result.log" # 현재 서버의 hostname HOSTNAME=$(hostname) # result 파일 초기화 및 hostname 기록 { echo "Hostname: $HOSTNAME" echo "" } > "$OUTPUT_FILE" # 검색할 IP 목록 IPS=( "112.175.14.207" "112.175.29.157" "112.175.29.89" "118.216.172.8" "154.90.62.144" "156.244.19.8" "210.219.173.212" "210.92.31.131" "211.233.36.104" ) for ip in "${IPS[@]}"; do echo "=== $ip ===" >> "$OUTPUT_FILE" MATCHES=$(grep "$ip" "$LOG_FILE") if [ -z "$MATCHES" ]; then echo "No access log found." >> "$OUTPUT_FILE" else echo "$MATCHES" >> "$OUTPUT_FILE" fi echo "" >> "$OUTPUT_FILE" done
Bash
복사
2.
실행 권한 부여
chmod +x check.sh
Bash
복사
3.
실행
./check.sh
Bash
복사
result.log
Hostname: kt-crinity-web-01 === 112.175.14.207 === No access log found. === 112.175.29.157 === No access log found. === 112.175.29.89 === No access log found. === 118.216.172.8 === No access log found. === 154.90.62.144 === No access log found. === 156.244.19.8 === No access log found. === 210.219.173.212 === No access log found. === 210.92.31.131 === No access log found. === 211.233.36.104 === No access log found.
Bash
복사