【问题标题】:Display output of bash command line on html page using javascript使用javascript在html页面上显示bash命令行的输出
【发布时间】:2017-03-25 02:20:42
【问题描述】:

我编写了 bash 脚本,以便我的自定义命令以文本格式输出一些数据。我想在网页上有一个按钮,单击该按钮时,会将用户带到显示命令输出的另一个页面。举个简单的例子,假设用户点击了“pwd”按钮。我希望下一页只显示 /usr/somedirectory 或类似的东西。

我是 JavaScript 和 HTML 的新手,但一直在使用一些 HTTP GET 和 POST 方法,同时对 websockets 进行了一些研究。解决此问题的最佳方法是什么?

【问题讨论】:

  • 我知道这不能回答你的问题,但我必须发出健康警告:如果你允许用户输入在你的计算机/服务器上执行 shell 脚本,我会非常非常小心,因为你可以很容易地为攻击者创造机会在你的机器上执行代码。

标签: javascript html bash http websocket


【解决方案1】:

解决此问题的一种方法是将 bash 命令的输出重定向到文本文件(例如:command1.txt),如下所示:

pwd > /folder/command1.txt

然后打开一个新的 html 页面,其中嵌入了文件 command1.txt 作为一个对象,如下所示:

<object data="/folder/command1.txt" type="text/plain"></object>

然后您可以为您拥有的每个命令按钮创建一个新的 html 页面和 .txt 文件。此外,最好设置一个“休眠”或延迟 1 秒左右(取决于您的配置)来显示 html 页面,以便系统有足够的时间来创建命令文件。

此外,正如您问题的评论部分所讨论的,请注意您允许运行的内容,因为这可能会产生安全问题。

【讨论】:

    猜你喜欢
    • 2019-05-20
    • 2017-12-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多