Tôi có một kịch bản tạo ra một số đầu ra. Tôi muốn kiểm tra đầu ra cho bất kỳ địa chỉ IP nào như
159.143.23.12
134.12.178.131
124.143.12.132
if (IPs are found in <file>)
then // bunch of actions //
else // bunch of actions //
Là fgrep
một ý tưởng tốt?
Tôi có sẵn bash.
0010.0000.0000.0001
nào? Tập tin có thể chứa những thứ trông giống địa chỉ IP như số phiên bản ( soft-1.2.1100.1.tar.gz
, thông số mạng (10.0.0.0/24), 1.2.3.4.5) không? Bạn có chấp nhận một giải pháp tích cực trên 333.444.555.666 không? Hoặc 0377.0377.0377.0377
(một địa chỉ IP tứ giác hợp lệ)?
bash
có sẵn, thì awk
thường cũng vậy, vì vậy điều này có thể phù hợp với bạn: awk '/([0-9]{2,3}\.){3}/ {print $5 "\t" $1}'
(Điều này một lớp sẽ dịch đầu ra của danh sách XFR của máy chủ thành /etc/hosts
định dạng.)