Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/367.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在html页面上显示bash脚本输出_Javascript_Html_Bash - Fatal编程技术网

Javascript 在html页面上显示bash脚本输出

Javascript 在html页面上显示bash脚本输出,javascript,html,bash,Javascript,Html,Bash,我有一个bash脚本来获取一些设备的状态/数据包丢失,看起来像这样(更改了名称/ip地址): 我需要在我的HTML页面中显示该输出 有人告诉我使用JavaScript提取状态/数据包丢失,将它们放在一个JSON对象中,然后从那里将其扔到我的页面。但是我不知道该怎么做,也不知道这是否是正确的方法。您只在简单的网站上使用cgi bin,所以请使用一个简单的解决方案: 将脚本的输出显示为预格式化测试: echo "<pre>" echo "Your ping results" echo "

我有一个bash脚本来获取一些设备的状态/数据包丢失,看起来像这样(更改了名称/ip地址):

我需要在我的HTML页面中显示该输出


有人告诉我使用JavaScript提取状态/数据包丢失,将它们放在一个JSON对象中,然后从那里将其扔到我的页面。但是我不知道该怎么做,也不知道这是否是正确的方法。

您只在简单的网站上使用cgi bin,所以请使用一个简单的解决方案:
将脚本的输出显示为预格式化测试:

echo "<pre>"
echo "Your ping results"
echo "</pre>"
echo“”
回显“您的ping结果”
回声“”
当这起作用时,您可能需要使用一些简单的html代码:

<?php
$TSTAMP = date('Y-m-d h:i');

$device1 = shell_exec("ping -c 1 100.1.0.2 | grep packet | awk '{ print $6 \" \" $7 \" \" $8 }'");
$device2 = shell_exec("ping -c 1 100.1.0.3 | grep packet | awk '{ print $6 \" \" $7 \" \" $8 }'");
$device3 = shell_exec("ping -c 1 100.1.0.4 | grep packet | awk '{ print $6 \" \" $7 \" \" $8 }'");
$device4 = shell_exec("ping -c 1 100.1.0.5 | grep packet | awk '{ print $6 \" \" $7 \" \" $8 }'");
$device5 = shell_exec("ping -c 1 10.1.0.250 | grep packet | awk '{ print $6 \" \" $7 \" \" $8 }'");
$device6 = shell_exec("ping -c 1 8.8.8.8 | grep packet | awk '{ print $6 \" \" $7 \" \" $8 }'");

echo "Device 1: ${device1}<br />";
echo "Device 2: ${device2}<br />";
echo "Device 3: ${device3}<br />";
echo "Device 4: ${device4}<br />";
echo "INTERNET WITH: ${device5}<br />";
echo "Device 6 Proxy : : ${device6}<br />";
echo "Last Update ${TSTAMP}";
?>
echo”
堆栈溢出帮助

我的ping结果是。。。
" 回显“您的ping结果” 回声“ "

当您有不同的脚本需要类似的html布局时,您可以创建一个html文件并在结果出现的地方放置一个占位符。您所需要做的就是在脚本中传输html文件,并用要显示的结果替换占位符。

如果您熟悉PHP:


使用jquery就足够简单了
$(“#somediv”).load(“/cgi-bin/yourscript.sh”)
,这将简单地吸收脚本的输出并将其吐出到页面的指定区域当然,您必须将bash脚本作为正确的CGI脚本编写,这意味着至少要输出一个基本的http响应头。
echo "<html>
<head>StackOverflow helps</head>
<body>
<br/>
My ping results are ...
<br/>
<table><tr><td>"
echo "your ping results"
echo "
</tr></td>
</table>
</body>
</html>
"
<?php
$TSTAMP = date('Y-m-d h:i');

$device1 = shell_exec("ping -c 1 100.1.0.2 | grep packet | awk '{ print $6 \" \" $7 \" \" $8 }'");
$device2 = shell_exec("ping -c 1 100.1.0.3 | grep packet | awk '{ print $6 \" \" $7 \" \" $8 }'");
$device3 = shell_exec("ping -c 1 100.1.0.4 | grep packet | awk '{ print $6 \" \" $7 \" \" $8 }'");
$device4 = shell_exec("ping -c 1 100.1.0.5 | grep packet | awk '{ print $6 \" \" $7 \" \" $8 }'");
$device5 = shell_exec("ping -c 1 10.1.0.250 | grep packet | awk '{ print $6 \" \" $7 \" \" $8 }'");
$device6 = shell_exec("ping -c 1 8.8.8.8 | grep packet | awk '{ print $6 \" \" $7 \" \" $8 }'");

echo "Device 1: ${device1}<br />";
echo "Device 2: ${device2}<br />";
echo "Device 3: ${device3}<br />";
echo "Device 4: ${device4}<br />";
echo "INTERNET WITH: ${device5}<br />";
echo "Device 6 Proxy : : ${device6}<br />";
echo "Last Update ${TSTAMP}";
?>