TGViewer
Записки IT специалиста Записки IT специалиста @interface31 · 8.99K subscribers
Post #6119 2.59K
Однострочный веб-сервер на Bash

Часто бывает нужно отслеживать некоторые показатели целевого сервера или контролировать ход работы какого-либо сервиса. Все это можно сделать командами, но постоянно вызывать их в консоли – занятие утомительное.

Но есть способ проще, создать специальную страничку в браузере и вывести на нее все необходимые показатели. Причем нам не потребуется устанавливать никакого софта, все можно сделать силами bash.

И в этом нам поможет команда netcat (nc), мы не будем подробно разбирать ее применение, а просто покажем примеры.

Например, мы хотим видеть свободную память:

while true;
do echo -e "HTTP/1.1 200 OK\n\n$(free)" \
| nc -l -k -p 8080 -q 1;
done


Здесь следует обратить внимание на опции -p – порт и q – время в секундах до закрытия соединения, если у вас там выполняется сложная команда, то возможно его придется увеличить.

Таким же образом можно просматривать логи:

while true;
do echo -e "HTTP/1.1 200 OK\n\n$(tail -n 15 logfile)" \
| nc -l -k -p 8080 -q 1;
done


Возьмем задачу немного сложнее, вывести сразу несколько показателей, ок, прямо не выходя из терминала выполним:

cmd1=$(free) 
cmd2=$(ss -tpln)
body="$cmd1\n$cmd2"

while true;
do echo -e "HTTP/1.1 200 OK\n\n$body" \
| nc -l -k -p 8080 -q 1;
done


Но если всего этого недостаточно, то вы можете написать скрипт, который будет выводить нужную вам информацию и запускать его нашим однострочным веб-сервером:

while true; do { \
echo -ne "HTTP/1.1 200 OK\r\n"; sh my_script.sh; } \
| nc -l -k -p 8080 -q 1; \
done


Просто? Да. Удобно? Да. И только bash и никаких дополнительных инструментов!
  • 👍 32
  • 🔥 6
  • ❤ 2
More from @interface31
  1. Sep 28, 2026Ностальгия… Ностальгия… - Мы тут тебе старенький компьютер привезем… Старенький, что сейча…
  2. Sep 28, 2026Post #6800
  3. Sep 27, 2026Ой, а что это случилось? Куда делась лицензия? Программные лицензии 1С - полное дно!!! На…
  4. Sep 27, 2026☝️ Не все умеют правильно пользоваться командами su и sudo. Команда su производит замену п…
  5. Sep 27, 2026Post #6797
  6. Sep 26, 2026Популярные мифы про Docker Встречался третьего дня с одним коллегой, у того серьезная голо…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →