user-interface - 从 Web GUI 远程执行交互式 shell 脚本

标签 user-interface shell scripting interactive

我的项目需要通过 Web GUI 远程执行交互式 shell 脚本。这意味着打印到脚本标准输出的内容必须在 GUI 上可用,并且必须从 GUI 获取用户输入并将其写入脚本的标准输入。

我的问题是 (a) 这是一个好主意吗(暂时搁置它是一个要求这一事实)? (b) 以前有人解决过这种问题吗?如果是,“最佳”方法是什么?

编辑 #1:要执行的脚本与 Web 服务器不在同一主机上。

编辑#2:

感谢您的回复!我担心浏览器端解决方案不符合我的目的,因为用户可以启动一个或多个脚本,可以关闭浏览器,在一段时间后回来检查脚本的输出并提供输入。

我提出的设计涉及将脚本的输出存储到不同的文件中,当用户启动浏览器时,它开始从文件中读取并不断轮询(通过 Ajax)直到脚本完成执行.

最佳答案

似乎您需要某种后台进程才能使其工作。您无法通过单个脚本来完成此操作,因为当这样的脚本运行时,浏览器认为它正在加载页面。如果这花费的时间比预期的要长,它就会中止并指出这一点。 “服务器响应时间太长”

因此,实际上您需要生成/ fork 一个单独的进程,并从客户端向服务器定期发出请求,这将导致服务器端脚本连接到该进程并与其交换消息。

参见phpterm例如。

关于user-interface - 从 Web GUI 远程执行交互式 shell 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/605373/

相关文章:

android - 如何在 Android 中使用 MPAndroidchart 库将 x 轴和 y 轴叠加在折线图之上?

Java在Windows和Mac按键检测上的差异

python - 如何在 GEKKO GUI 中显示解决方案?

shell - 如何插入作为参数发送的字符串?

bash - 将设备挂载到存储在变量中的挂载点

php - 在脚本中没有多个相同代码实例的情况下重复 javascript 功能

c++ - 在 QListView 中选择索引

bash - 带通配符的猫

python - 如何修改 gzip 压缩的 tar 文件中的文件?

bash - 将脚本的输出作为独立的 bash 命令运行