websocketd如何读取 git, npm 等程序的输出

问题

想用 websocketd 这个工具,将脚本的输出打印在浏览器上。
但是在脚本中的 git, npm 等等程序的输出,却不会被 websocketd 读取到。

代码重现

脚本 script.sh:

#!/bin/bash
echo 'start'
echo 'git'
git clone git@github.com:necolas/normalize.css.git
echo 'npm'
npm i normalize.css
echo 'finish'

前端js:

const ws = new WebSocket('ws://localhost:8080/');  
ws.onopen = function() {  
  console.log('connect');  
};  
ws.onmessage = function(event) {  
  console.log(event.data);
};  
ws.onclose = function () {  
  console.log('disconnect'); 
};  
ws.onerror = function(event) {  
  console.error(event);
}

websocketd命令:

websocketd --port=8080 sh script.sh

结果重现

connect
start
git
npm
finish
disconnect

期待结果

将 git, npm 程序原本能在控制台输出的内容输出到 websocketd

阅读 2.7k
1 个回答
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题