Web serveris vienā rindiņā

Linuxisti, tomēr ir manjaki. Pozitīvā nozīmē. No dikiy ieraksta uzzināju, ka viens meistars ir uzcepis bash vidē webserveri vienas rindiņas garumā. Pēc tam cits meistars šo skriptu ir nedaudz optimizējis un izveidojis bash_httpd 2.1 versiju, kas strādā gan ar pārlūku, gan wget (konsoles lejupielādes menedžeris).

Šādi izskatās skripta kods. Tas ir bash skripts kurš izmanto dažādus unix komandrindas rīkus.

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

Kā saka krievi: “respect i uvaga”.

9 komentāri par “Web serveris vienā rindiņā

  1. bubu

    nuu… arī C vai C++’ā var webserveri vienā rindiņā uzrakstīt. Rindiņu skaitam jau mūsdienās nav svara. No svara ir drīzāk baitu skaits šādām mini-programmām.

    Atbildēt

Ieraksti komentāru

Tava e-pasta adrese netiks publicēta.