Назад | Перейти на главную страницу

HPUX- «Telnet TERMINAL-SPEED option ON» останавливает завершение telnet

Мне нужен сценарий, чтобы проверить, доступен ли telnet на сервере. У меня есть аналогичный сценарий для Linux, но он не работает в HPUX.

Сценарий Linux,

telnet `"hostname"` < "dummy.txt" 2>&1 > telnet.txt ### passsing a dummy file ##
grep Escape telnet.txt >> telnet.txt
if [ $? = 0 ]; then
 echo "Telnet is available" > telnet.txt
 else
 echo "Telnet is not available" > telnet.txt
fi

Тот же скрипт на Hpux

telnet `"hostname"` < "dummy.txt" 2>&1 > telnet.txt ### passsing a dummy file ##
grep Escape telnet.txt >> telnet.txt
if [ $? = 0 ]; then
 echo "Telnet is available" > telnet.txt
 else
 echo "Telnet is not available" > telnet.txt
fi

Эта команда не завершается, см. Ниже:

# telnet `"hostname"` < "dummy.txt" 2>&1 > telnet.txt
Telnet TERMINAL-SPEED option ON

Эта опция "Telnet TERMINAL-SPEED ON" останавливает завершение сценария. Необходимые данные зафиксированы в telnet.txt:

# cat telnet.txt
Trying...
Connected to ussltcsnh5001.solutions.glbsnet.com.
Escape character is '^]'.
Local flow control on

HP-UX ussltcsnh5001 B.11.31 U ia64 (ta)

login:

В этом dummy.txt есть имя пользователя и пароль? Похоже, вы застряли в приглашении входа в систему, поэтому команда не прерывается. Вам необходимо передать имя пользователя и пароль или иным образом выйти из открытого сеанса.

Попробуйте этот пример, который завершит сеанс telnet через две секунды. Вы можете увеличить время ожидания здесь, если не получаете нужный текст.

ПРИМЕР:

telnet `"hostname"` < "dummy.txt" 2>&1 > telnet.txt &
# Get its PID
PID=$!
# Wait for 2 seconds
sleep 2
# Kill it
kill $PID
grep Escape telnet.txt >> telnet.txt
if [ $? = 0 ]; then
 echo "Telnet is available" > telnet.txt
 else
 echo "Telnet is not available" > telnet.txt
fi