obiektowe + zmienne

0

Czesc wszystkim! mam maly problem.

Otoz... potrzebuje program ktory pobiera informacje o maszynie oraz testujacy lacze pomiedzy nimi oraz serwerami. tzn. skrypt *.bat po uruchomieniu ktorego sprawdza dane maszyny, nastepnie pinguje ja po hostname i jesli ping przejdzie (mamy odpowiedz) program dalej dziala w/g wskazowek, problem w tym ze jesli ping wyrzuci skrypt poinformuje nas o nim i zapyta o adres IP ktory bedzie nastepnie pingowany. Dalej skrypt doda maszyne do hosts itp itd.

Problem mam z 2ma rzeczami. Po uruchomieniu programu i zanotowaniu wszystkich informacji chce zeby ZAPYTAL o hostname maszyny i pingowal ja a nastepnie przy bledzie pingu ZAPYTAL o adres IP i pingowal po adresie. z gory dzieki za informacje. ponizej fragmet *.bata w ktorym brakuje mi wpisywania adresow/hostow (robi to z podana na sztywno sciezka)

cls
echo -
echo Trwa zbieranie danych z serwera.
echo Storing info from serwer.
echo -
echo ------------------------------------------------------ > c:\info.txt
echo System operacyjny:>>c:\info.txt
echo .
ver >> c:\info.txt
echo ------------------------------------------------------ >> c:\info.txt
echo # >> c:\info.txt
echo ------------------------------------------------------ >> c:\info.txt
echo Konfiguracja sieci:>>c:\info.txt
echo .
ipconfig /all >> c:\info.txt
echo ------------------------------------------------------ >> c:\info.txt
echo # >> c:\info.txt
echo ------------------------------------------------------ >> c:\info.txt
ping -n 2 -l 1024 87.204.202.74 >> c:\info.txt
echo .
echo ------------------------------------------------------ >> c:\info.txt
echo # >> c:\info.txt
echo ------------------------------------------------------ >> c:\info.txt
echo Nslookup:>>c:\info.txt
echo .
nslookup 87.204.202.74 >> c:\info.txt
cls

0

ping -n 1 ADRES |find "TTL=" >nul
if errorlevel 1 echo "ping refused" & goto :eof
echo Sukces
echo OK
:eof

0

http://garbo.uwasa.fi/pc/batchutil.html powiedziało:

readv101.zip 7944 Aug 22 2000
Batch command to read input from file or keyboard

0
@echo off
set /p host=Podaj serwer:
ping %host%
0
bo napisał(a)

@echo off
set /p host=Podaj serwer:
ping %host%



A jak zrobic zeby rozpoznawal czy adres jest po nazwie czy po adresie?

tzn. jesli wpisze ADRES HOSTA np wp.pl i pinga nie ma, zapyta mnie o ponowne wprowadzenie adresu po adresie IP. jesli ping jest wpisze do pliku HOSTS nazwe wprowadzona za 1 razem oraz adres IP wprowadzony za razem drugim. Jesli zas pinguje po nazwie nie pyta o adres i nie zapisuje nic do pliku hosts. 


Skrypt ten chcialem zastosowac nie tyle do pinga co do port pinga (firewalle). Na chwile obecna wymyslilem cos takiego:

---------------------------------------------------------------------------------------

:01
set /p m="select server address  ---"
pping %m% 22 |find "connected." >nul
if errorlevel 1 echo ERROR & goto :012 

pping %m% 80 |find "connected." >nul
if errorlevel 1 echo ERROR & goto :013 
echo OK
pause
GOTO 00

:012
echo PING PORTU 22 NIE ODPOWIADA
pause
GOTO 00

:013
echo PING PORTU 80 NIE ODPOWIADA
pause
GOTO 00

1 użytkowników online, w tym zalogowanych: 0, gości: 1