【问题标题】:long process shell script cgi?长进程shell脚本cgi?
【发布时间】:2010-10-28 20:23:48
【问题描述】:

我有一个下载软件包列表的 CGI shell 脚本。它会打印一些有关该进程的信息,然后开始运行它。完成后,它会显示作业的结果。

它可以完美运行,但是,在该过程完成之前,在浏览器上不会显示任何内容。有什么方法可以告诉浏览器加载它已经拥有的信息并保持不变?

例如:

#!/bin/bash echo -e "内容类型:文本/html\n\n" wgetCom="wget --quiet" 回声“
”

    echo "下载自动配置文件"
    $wgetCom http://people.redhat.com/eblake/autoconf/autoconf-2.68.tar.bz2

    echo "正在下载 automake"
    $wgetCom http://ftp.gnu.org/gnu/automake/automake-1.11.1.tar.bz2

    echo "下载 bash"
    $wgetCom http://ftp.gnu.org/gnu/bash/bash-4.1.tar.gz

    echo "下载 binutils"
    $wgetCom http://ftp.gnu.org/gnu/binutils/binutils-2.20.1.tar.bz2

    echo "下载完成"


回声“

我需要的是在处理 shell 脚本时显示回声。

任何帮助将不胜感激。

【问题讨论】:

    标签: shell cgi


    【解决方案1】:

    您要求的是关闭输出缓冲。我不确定 bash 是否完全或如何禁用它,但我知道如果 apache 配置为压缩输出,它不会缓冲。添加包含此内容的 .htaccess 文件:

    BrowserMatch Mozilla no-gzip
    

    看看它是否神奇地开始工作。如果没有,请回到绘图板。

    【讨论】:

      猜你喜欢
      • 2010-11-15
      • 2011-08-27
      • 1970-01-01
      • 2012-10-12
      • 1970-01-01
      • 1970-01-01
      • 2019-08-11
      • 1970-01-01
      • 2011-03-13
      相关资源
      最近更新 更多