首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >将Shell脚本变量输出到HTML

将Shell脚本变量输出到HTML
EN

Stack Overflow用户
提问于 2014-04-22 17:41:47
回答 1查看 6.9K关注 0票数 2

对于编写代码来说,这是非常新的,它可以帮助将变量输出到本地html文件。脚本和html都在同一台机器上。脚本从调制解调器中提取信号级别,我希望将其显示到本地html加载屏幕上。

信号脚本:

代码语言:javascript
运行
复制
#!/bin/bash

MODEM=/dev/ttyUSB3
MODEMCMD=AT+CSQ

{
  echo -ne "$MODEMCMD"'\r\n' > "$MODEM"

  if [ $? -eq 1 ]
  then
    echo "error";
    exit;
  fi

  {
    while read -t 1
    do
      if [[ $REPLY == +CSQ* ]]
      then
        arr1=$(echo "$REPLY" | cut -d' ' -f2)
        arr2=$(echo "$arr1" | cut -d',' -f1)
        echo "$arr2"
        exit;
      fi
    done
    echo "error";
  } <"$MODEM"
}  2>/dev/null

希望它的输出显示在我的html上的表中。谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-04-22 20:44:30

当您承载您自己的web服务器时,CGI协议允许您使用您喜欢的任何语言进行服务器端编程;包括Bash。

下面是一个简单的示例,它为显示当前日期和时间并每10秒刷新一次的网页提供服务。将下面的Bash脚本放在cgi-bin文件夹( Linux/Apache:/usr/lib/cgi-bin上)中的一个名为cgi-bin的文件中,并使其可执行(chmod +x test.cgi)。该页面的网址是:http://MyWebServer/cgi-bin/test.cgi

代码语言:javascript
运行
复制
#!/bin/bash
cat << EOT
content-type: text/html

<!DOCTYPE html>
<html>
<head>
<title>Test</title>
<meta http-equiv="refresh" content="10" />
</head>
<body>
$(date)
</body>
</html>
EOT

请注意:content-type下面的空行与CGI协议相关。

date替换为您自己的Bash脚本;确保它输出类似于有效HTML的内容。这意味着您需要付出一定的努力为您的标记添加HTML标记,并在内容中编码一些字符(< > &)。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23226617

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档