скрипт создания http сервера в конкретной папке

Попался сегодня один матерый линуксоид-извращенец, который не признает никаких виндовых сервисов. Соответственно самбы у него небыло, но стояла задача как передать ему файлик. Тут пришелся очень кстати вот такой bash скрипт:

#! /bin/bash
:;
while [ $? -eq 0 ] ; do
nc -vlp 8080 -c '(
read a b c
z=read
while [ ${#z} -gt 2 ] ; do
read z
done
f=`echo $b|sed 's/[^a-z0-9_.-]//gi'`
h="HTTP/1.0";o="$h 200 OK\r\n";c="Content"
if [ -z $f ] ; then
(echo $o
ls -1|(while read n ; do
if [ -f "$n" ] ; then
echo "`ls -gh "$n"`
"
fi
done);
);
elif [ -f $f ] ; then
echo "$o$c-Type: `file -ib $f`\n$c-Length: `stat -c%s $f`"
echo
cat $f
else echo -e "$h 404 Not Found\n\n404\n"
fi)'
done

Который создает временный http сервер на порту 8080 и делает листинг файлов
Как его запускать: находясь в папке, которую мы хотим открыть вызываем данный скрипт.
P.S. скрипт отрыт на просторах инета. Авторство неизвесно.

Заказать создание и поддержку безопасной IT-инфраструктуры любой сложности

Быть уверенным в своей IT-инфраструктуре – это быть уверенным в завтрашнем дне.

Для того, чтобы сделать заказ:

Заполните форму обратной связи и мы обязательно с вам свяжемся:
Форма обратной связи
Позвоните нам по телефону:
+7(909)952-44-33
Напишите нам на электронную почту:
order@blackdiver.net
Напишите нам в Telegram:
Telegram
Другие способы связи Вы сможете найти в разделе Контакты.

Please Login to Comment.