cgi-bin, bash и форматирование вывода

кот /usr/lib/cgi-bin/test00.cgi

#!/bin/bash
echo "Content-type: text/html"
cat /tmp/file

результаты:

one two three four

Как форматировать вывод как сценарий bash (с новой строкой)?

one
two
three
four

person Pol Hallen    schedule 07.09.2017    source источник
comment
Вы пробовали text/plain вместо text/html?   -  person Ruud Helderman    schedule 07.09.2017
comment
Откуда печатается one two three four? А где echo строка Content-type: text/html   -  person Inian    schedule 07.09.2017
comment
@Inian OP пишет сценарий CGI. Итак, я предполагаю, что OP относится к тому, как веб-браузер отображает результирующий HTTP-ответ. Context-type является частью HTTP-заголовка и поэтому не виден напрямую. Остальное, по-видимому, является содержанием /tmp/file.   -  person Ruud Helderman    schedule 07.09.2017


Ответы (1)


Здесь вы можете использовать как html-, так и UNIX-команды.

#!/bin/bash

echo Content-type: text/html
echo ""

/bin/cat << EOM
<HTML>
<HEAD><TITLE>File Output: /tmp/file </TITLE>
</HEAD>
<BODY bgcolor="#cccccc" text="#000000">
<HR SIZE=5>
<H1>File Output: /tmp/file </H1>
<HR SIZE=5>
<P>
<SMALL>
<PRE>
EOM

/bin/cat /tmp/file

CAT << EOM
</PRE>
</SMALL>
<P>
</BODY>
</HTML>
EOM
person watchmansky    schedule 07.09.2017