我试图通过我的cgi脚本将参数传递给我的bash脚本。这可能听起来有点令人困惑,所以这里有解释,
我有一个名为script.sh
的bash脚本,它接受一个参数让我们说name
所以我像这样执行这个脚本,
bash script.sh myName
然后将该名称写入文本文件,然后我可以从该文本文件中读取它。
哪个工作正常,但我希望能够通过cgi执行相同的命令,所以我在我的cgi文件中执行了这个,
`/bin/echo "bash script.sh myName"`;
现在我通过我的网络服务器执行这个cgi脚本,
http://localhost/index.cgi
但是myName
没有作为参数传递给我的bash脚本,因此没有任何内容写在文本文件中。
任何人都可以告诉我为什么当我运行cgi脚本时它不起作用但在没有cgi脚本的情况下运行时工作正常?
编辑:我也尝试过使用exec()
,但争论仍未通过。
答案 0 :(得分:2)
在你写的问题的评论中,CGI脚本是用CSH编写的。
然后它就像下面这么简单。
<强> script.csh 强>
$(function () {
var data1 = [[1451599200000,0],[1454277600000,0],[1456783200000,104],[1459458000000,67]];
var data2 = [[1451599200000,48],[1454277600000,48],[1456783200000,53],[1459458000000,37]];
var options = {
series: {
bars: {
show: true,
}
},
xaxis: {
mode: "time",
timeformat: "%m-%Y",
}
};
var plotObj = $.plot($("#placeholder"), [{
data: data1,
label: "Data1",
}, {
data: data2,
label: "Data2",
}],
options);
});
<强> script.sh 强>
#!/bin/csh
./script.sh argX
测试script.csh
#!/bin/bash
echo 'hello,' $1
它不是你想要的,请澄清。