… и выполнить те или иные операции в зависимости от результата проверки, используя командный процессор, например bash.
Примерно так формулируется очередная небольшая задача, возникающая в ежедневном потоке рутины автоматизации работы.
Существует множество подходов, а мне нравится использовать утилиту netcat или nc. Вот пример логики для пакетного исполняемого файла:
|
|
#/bin/bash nc -z 127.0.0.1 3306 \ && echo "Порт уже открыт, видимо mysql запущена" \ || echo "Порт свободен"; |
В примере выше, мы проверяем стандартный порт MySQL — 3306. Если он уже используется, nc возвращает true и выполняется следующая команда в цепочке — выводится сообщение о том, что порт уже открыт. В противном случае выполняется следующая команда с сообщением, что порт не занят.
Для более сложных скриптов можно воспользоваться оператором if — then — else, тогда скрипт будет выглядеть так:
|
|
#/bin/bash if nc -z 127.0.0.1 3306; then echo "Порт уже открыт, видимо mysql запущена"; else echo "Порт свободен"; fi; |
Второй вариант более читабельный и позволяет легко конструировать вложенные условия.
UNIX
Данная запись опубликована в 31.01.2023 13:46 и размещена в рубрике Программирование.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Март 17, 2022 г.
Команда su позволяет выполнить любую операцию от имени существующего пользователя.
К примеру от имени пользователя nginx:
[crayon-69632ae6125f6657500083/]
Должно вывести nginx, но скорее всего ничего не получится и вы увидите сообщение
...
Читать
Сентябрь 9, 2018 г.
Если после команды
[crayon-69632ae6128c4639548148/]
Вы видите что то вроде:
[crayon-69632ae6128d0976854435/]
Возможно вам поможет следующий алгоритм установки.
therubyracer потребовался мне для работы lessc, потому я стал искать решение, как ...
Читать
Февраль 20, 2018 г.
Если вы укажите полный путь архивируемой папки в UNIX, то файлы будут размещены в архиве вместе полным путем. Не всегда это удобно и правильно, зависит от выполняемой задачи.
Как отсечь абсолютные пути, оставив только относительные?
Для этого ...
Читать
Февраль 13, 2018 г.
Ещё одна шпаргалка по администрированию UNIX серверов. На этот раз рассмотрим несколько полезных команд для создания бекапа базы данных из консоли.
Нам понадобится команда mysqldump, которая позволяет создавать sql скрипт базы или её части.
Создание ...
Читать