Tôi đang cố gắng tạo một số kịch bản kiểm tra pass / fail đơn giản, nhưng tôi đang gặp một số thách thức như được nêu dưới đây. Mục đích của tôi là lấy toàn bộ kết quả của một lệnh (chẳng hạn như ping) vào một results.txt
tệp để giữ, nhưng cũng phân tích results.txt
tệp để kiểm tra khác nhau nếu phát hiện ra vấn đề:
#!/bin/bash
ping -c 20 google.com > results.txt
packetloss = `awk '/packet loss/{x=$6} END{print x}' results.txt`
echo "$packetloss" >> debug.txt
# if packetloss > 0, add to an error.txt to fail
# if avg ping time > 5ms, add to an error.txt to fail
Biến packloss không nhận được awk
thông tin từ results.txt
tệp (gửi đến tệp gỡ lỗi để xem xét). Tôi đã tự hỏi nếu có một cái gì đó về kịch bản shell sẽ ngăn chặn điều này và một cách giải quyết liên quan?
Chạy thủ công awk
với results.txt
lợi nhuận '0%', đó là kết quả mong đợi.