Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >用于bash命令的CGI脚本

用于bash命令的CGI脚本
EN

Stack Overflow用户
提问于 2013-06-12 22:10:15
回答 1查看 1.9K关注 0票数 0

我对这一切都是新手,所以如果我做错了什么,请告诉我。

我正在用我的覆盆子pi做一些gpio的东西,现在我正在做一些东西,这样gpio的引脚就可以通过一个web界面来控制了。我这样做的方法之一是使用bash CGI脚本来控制引脚,并从浏览器执行它们。

到目前为止,我能让它工作的唯一方法是浏览器加载包含代码的页面".../cgi-bin/gpio1.cgi“等:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#!/bin/bash
echo "Content-type: text/html"
echo ""
...gpio stuff...

这是可行的,但是浏览器会导航到由该脚本创建的空白页面。

有没有一种方法可以在不离开网页的情况下执行这些脚本,这样脚本就不会编写HTML,而是专注于实际的gpio内容?

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-06-13 04:16:27

试试这个:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#!/bin/bash
echo "Status: 204 No Content"
...gpio stuff...

HTTP响应必须以状态行开始;如果CGI没有指定状态行,webservers通常会添加状态“200OK”。该状态必须伴随响应正文,该正文将形成新的网页。

您想要的状态是204,这表示请求已得到满足,但没有响应,浏览器应该停留在同一页面上。通常,这是对POST请求的响应,而不是对GET请求的响应,但无论如何它都应该可以工作。因为204响应不需要响应体(实际上,它不允许有响应体),所以不需要在状态行之后输出一个空行,但是如果脚本运行时间较长,则可能需要一个空行。

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

https://stackoverflow.com/questions/17076246

复制
相关文章
Bash 脚本 set 命令教程
服务器的开发和管理离不开 Bash 脚本,掌握它需要学习大量的细节。 set命令是 Bash 脚本的重要环节,却常常被忽视,导致脚本的安全性和可维护性出问题。本文介绍它的基本用法,让你可以更安心地使用
ruanyf
2018/04/12
1.7K0
Bash 脚本 set 命令教程
Bash 脚本 set 命令教程
服务器的开发和管理离不开 Bash 脚本,掌握它需要学习大量的细节。 set命令是 Bash 脚本的重要环节,却常常被忽视,导致脚本的安全性和可维护性出问题。本文介绍它的基本用法,让你可以更安心地使
崔庆才
2018/06/25
1.5K0
SHELL(bash)脚本编程五:内置命令
bash的内置命令和外部命令的使用方法相同,我们已经介绍了一部分内置命令的用法,本文接着介绍另一些常用内置命令的用法。
用户5030870
2019/04/11
5840
在Linux使用Bash脚本命令
tee命令的默认行为是覆盖指定的文件,与>运算符相同。 要将输出附加到文件,请使用-a(--append)选项调用命令:
用户5005176
2021/08/10
2K0
使用bash编写Linux shell脚本--复合命令
除了最简单的脚本,你很少想要执行每一个命令。执行一组命令或者重复执行一组命令若干次比执行单个命令更加有助。复合命令是将命令封装在一组其他命令中。 从可读性来说,封装后的命令使用缩进格式将会使复合命令的代码清晰并便于阅读。管理员曾经抱怨过我的缩进比标准的缩进少了一个空格(我必须使用尺子在屏幕上测量才能确定此事),我认为这不是什么问题,但是他说,当输入 0 时,它的程序会崩溃。 复合命令总是有两个命令组成。命令的结束符是该命令相反拼写顺序,就像使用括号将命令括住了。例如:神秘莫测的命令 esac 实际上是复合命
猿人谷
2018/01/17
2.4K0
如何在Bash Shell脚本中使用`exec`命令?
exec 是一个在Bash Shell脚本中使用的命令,它允许您替换当前进程的内容,包括进程ID和文件描述符。使用exec命令可以实现一些有用的功能,例如替换脚本当前的Shell进程、切换到不同的命令解释器、重定向标准输入输出等。本文将详细介绍如何在Bash Shell脚本中使用exec命令,并提供一些常见的用例和示例。
网络技术联盟站
2023/06/08
3.7K0
bash脚本编程
编程语言: 编译器,解释器 编程语言:机器语言,汇编语言、高级语言 静态语言:编译型语言 强类型(变量) 关键字: 事先转换成可执行格式 c,c++,JAVA,C# 动态语言:解释型语言 on the fly 弱类型 边解释变执行 php,shell,python,perl(面向过程) ​ 面向对象:shell,c 面向对象:JAVA,Python,perl,C++ ​ bash:脚本解释器 编程能力: 脚本编程 变量:内存空间,命名的内存空间(可以回收) 内存:编址的存储
若与
2018/07/04
1.3K0
bash 脚本 learning
linux bash 脚本是个好东西,能用工具搞定的就尽量避免用手敲。这里记录下学习过程中的问题。
上山打老虎了
2022/06/14
4370
unix 的 bash shell 脚本
1. test01   test02 1 200    1 100 2 500    2 300 3 200    3 50 4 100    4 150 输出 200 100 100 500 300 200 300 50  150 100 150 -50 awk 减法数组 awk ‘ NR == FNR { a[NR]=$2 } NR != FNR { print a[FNR], $2,(a[FNR]-$2)} ' /root/test* 2. 123abc456 45
bear_fish
2018/09/20
1.5K0
Apache 通过CGI执行脚本
告诉服务器cgi和pl后缀的文件都是cgi脚本,编写python脚本,并放入/var/www/cgi-bin/目录下
微软技术分享
2022/12/28
6740
用bash脚本创建screen并向其发送命令
GNU Screen是一款由GNU计划开发的用于命令行终端切换的自由软件。用户可以通过该软件同时连接多个本地或远程的命令行会话,并在其间自由切换。 GNU Screen可以看作是窗口管理器的命令行界面版本。它提供了统一的管理多个会话的界面和相应的功能。
用户1685462
2021/08/05
1.5K0
bash脚本 while语法
基本语法(比较常见的两种形式): 只要特定条件为真,”while” 语句就会执行 while [ condition ] do command1 command2 command3 done 或者 while [ condition ]; do command1 command2 command3 done 说明:  行1,首先进行条件测试,如果传回值为0(条件测试为真),则进入循环,执行命令区域,否则 不进入循环,介绍while 命令  行3,执行命令区域,这些命令中,
joshua317
2018/04/16
8460
bash脚本 while语法
Bash脚本编程(原创)
Bash,Unix shell的一種,在1987年由布萊恩·福克斯為了GNU計劃而编写。1989年釋出第一個正式版本,原先是計劃用在GNU作業系統上,但能运行于大多数类Unix系统的操作系统之上,包括Linux與Mac OS X v10.4都將它作為預設shell。它也被移植到Microsoft Windows上的Cygwin與MinGW,或是可以在MS-DOS上使用的DJGPP專案。在Novell NetWare與Andriod在上也有移植。1990年後,Chet Ramey成为了主要的维护者。為Bourne shell的後繼相容版本與開放原始碼版本,它的名稱來自Bourne shell(sh)的一个双关语(Bourne again / born again):Bourne-Again SHell。
用户2645267
2018/08/04
1.4K0
通用的停止进程bash脚本
printf "\033[1;33musage: $0 process_cmdline\033[m\n"
一见
2018/08/07
1.4K0
常用bash脚本功能
参考:https://stackoverflow.com/questions/3601515/how-to-check-if-a-variable-is-set-in-bash
YP小站
2021/11/26
9000
Linux笔记------bash脚本
<https://www.runoob.com/linux/linux-shell-basic-operators.html
来杯Sherry
2023/05/25
1.7K0
处理Apache日志的Bash脚本
去年一年,我写了将近100篇网络日志。 现在这一年结束了,我要统计"访问量排名",看看哪些文章最受欢迎。(隆重预告:本文结尾处将揭晓前5名。) 以往,我用的是AWStats日志分析软件。它可以生成很详
ruanyf
2018/04/18
1.2K0
处理Apache日志的Bash脚本
bash找不到命令_bash sed
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
全栈程序员站长
2022/09/29
1.8K0
PHP执行Shell脚本或Bash脚本文件并返回命令输出详情
system和exec函数可能被配置文件禁用,可以通过修改php配置文件删除被禁用的函数。
阿峰技术博客
2022/10/29
2.5K0
PHP执行Shell脚本或Bash脚本文件并返回命令输出详情
点击加载更多

相似问题

不执行bash命令的CGI脚本,如“CP”

11

用于perl cgi脚本的Bash配置文件

110

cgi bash脚本未等待命令的所有输出

13

用于几个命令的Bash脚本

13

通过CGI执行bash脚本

10
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文