Как вы понимаете работу следующей команды? Привет всем, есть команда:#!/bin/bash if [ "$(echo PING | nc localhost 3010)" = "PONG" ]; then echo "ping successful" else echo "ping failed" exit 1 fi почему она возвращает PONG (у нас на 3010 работает tcp сервер) ? Это ответ начала установки tcp соединения? всем добра, Вадим
Посылает строку "PING" через утилиту nc (netcat) на localhost порт 3010.Проверяет ответ от сервера. Если ответ равен "PONG", то выводит "ping successful", иначе выводит "ping failed" и завершает выполнение скрипта с кодом ошибки 1.
Ответ "PONG" в данном случае означает, что сервер на порту 3010 успешно получил и обработал запрос "PING" и отправил обратно ответ "PONG". Это не начало установки tcp соединения, а просто подтверждение успешной обработки запроса сервером.
Да, данная команда выполняет следующие действия:
Посылает строку "PING" через утилиту nc (netcat) на localhost порт 3010.Проверяет ответ от сервера. Если ответ равен "PONG", то выводит "ping successful", иначе выводит "ping failed" и завершает выполнение скрипта с кодом ошибки 1.Ответ "PONG" в данном случае означает, что сервер на порту 3010 успешно получил и обработал запрос "PING" и отправил обратно ответ "PONG". Это не начало установки tcp соединения, а просто подтверждение успешной обработки запроса сервером.