Strona 1 z 1

awk - pingowanie adresu IP otrzymanego przez skrypt

: 10 grudnia 2008, 08:49
autor: R_Przemek
Witam.

Napisałem coś takiego:

Kod: Zaznacz cały

#!/bin/bash

zmienna=`awk '{ print $2 }' /etc/ethers | ping -c 1  | awk '$3 == "from" { print $4 }'`

echo "$zmienna";
Skrypt ma pobierać adresy IP z pliku /etc/ethers. Plik wygląda następująco:

Kod: Zaznacz cały

00:00:00:00:00:00     192.157.0.2
00:00:00:00:00:01     192.157.0.3
00:00:00:00:00:02     192.157.0.4
00:00:00:00:00:03     192.157.0.5
00:00:00:00:00:04     192.157.0.6
Następnie ma pingować wszystkie pobrane IP i te które $3 == "from" odpowiedzą ma wyświetlać w postaci: 192.168.0.2: , 192.168.0.3:

Wiem, że nie właściwie ustawiłem parametr PING w skrypcie, ma ktoś może jakąś koncepcję żeby poprawić?

: 10 grudnia 2008, 11:30
autor: markossx
Może tak:

Kod: Zaznacz cały

#!/bin/bash
 for i in `cat ether | awk '{ print $2 }'`
   do
   ping -q -c 1 $i
         if [ $? = 0 ]; then {
                 echo "$i is alive"
                 }
         else {
                 echo "$i is death"
                 }
         fi
done