Đôi khi cần phải kiểm tra xem máy chủ bạn muốn chạy một số tập lệnh bash lớn có được kết nối với Internet hay không. Thông thường, nó có ý nghĩa khi chạy các tập lệnh định kỳ bằng cách sử dụng cron. Dưới đây là tập lệnh bash nhỏ cho mục đích này:
#!/bin/bash WGET="/usr/bin/wget" $WGET -q --tries=10 --timeout=5 https://www.google.com -O /tmp/index.google &> /dev/null if [ ! -s /tmp/index.google ];then echo "no" else echo "yes" fi
Như bạn thấy, nó cố gắng tải xuống trang chỉ mục của google, nếu nó không trống thì tập lệnh sẽ trả về "có", nếu không có kết nối Internet, tập lệnh sẽ trả về "không". Nếu không thể tìm nạp trang trong hơn 5 giây, tập lệnh cũng sẽ trả về "không".
Có gì để thêm không? Không có chi! 🙂