使用 BASH CGI 保留换行符和格式

Preserving line breaks and formatting with BASH CGI

我试过这个(text/plain 内容):

#!/usr/bin/sh
echo "Content-type: text/plain"
echo ""
echo `ls -al`

还有这个(html 带有 <pre> 标签的内容):

#!/usr/bin/sh
echo "Content-type: text/html"
echo ""

echo "<pre>"
echo `ls -al`
echo "</pre>"

在这两种情况下,我的 Bash CGI 都在浏览器输出的一行中输出所有内容。

如何保留终端中的格式?

而不是:

echo `ls -al`

只需使用:

ls -al

以便所有换行符也保留在输出中。

您的 echo 命令未被引用因此导致 shell 将所有换行符和多个 space 转换为单个 space.