aping improved

Викладую нову версію свого скрипта aping. Код трохи підчистив від непотребу, а ще тепер він виводить менше сміття.

#!/usr/bin/env bash

number=0
successed=0
failed=0
timeout=1

if [[ "-$1" == "-" ]]
then
        echo "Usage: `basename "$0"` <hostname | IP>"
        exit 1
fi

prev="undefined"

while true
do
        ((number++))
        echo -n "[#$number, `date +%H:%M:%S`, ok: $successed, fail: $failed] pinging $1..."
        ping -c 1 -q -W $timeout $1 >/dev/null 2>&1
        cur="$?"
        if [[ "$cur" == "0" ]]
        then
                ((successed++))
                echo -n "OK"
        else
                ((failed++))
                echo -n "FAIL"
        fi
        echo -n -e "\033[0K"
        if [[ "$cur" == "$prev" || "$prev" == "undefined" ]]
        then
                echo -n -e '\r'
        else
                echo -n -e '\n'
        fi
        prev="$cur"
        sleep 1
done

4 Comments on “aping improved

  1. Чи не краще successed замінити на succeeded?

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *

*

Цей сайт використовує Akismet для зменшення спаму. Дізнайтеся, як обробляються ваші дані коментарів.