1. 介绍

simple-web-terminal是一个用go语言和javascript编写的运行在浏览器的web利用,同时反对windows,mac,linux等平台,咱们能够用它通过浏览器在服务器执行shell,上传下载文件。

仓库链接: https://github.com/kompasim/s...
下载链接:https://github.com/kompasim/s...

该程序用golang在服务器启动一个启动一个http服务器,并在客户端用js的websocket和服务器通信实现在浏览器输出命令在服务器执行。

正告:不晓得本人在做什么的状况下不要轻易的把这个程序放到本人的服务器上,用这个程序能够执行任何系统命令,这个很不平安。

2. 应用办法

咱们只需从它的release页面下载咱们平台对应的可执行文件,并双击运行即可。之后咱们会在控制台窗口看到如下信息:

而后咱们拜访http://127.0.0.1:7777能够在浏览器看到如下ui界面:

咱们能够在该网页输出咱们启动程序的电脑所能执行的所有命令。

3. 可用命令

除了服务器上的所有命令之外,terminal还提供了方便使用的文件上传,下载和编辑等功能性命令,十分不便。反对的命令列表如下:

  • help : 打印帮忙信息
  • stop : 在服务器敞开该terminal程序过程
  • save : 保留以后web页面上的日志
  • exit : 敞开以后网页和服务器的socket网页
  • shell : 设置执行系统命令的shell(powershell,sh,bash)
例子: shell powershell
  • coding : 设置输入日志的编码(例如用powershell的时候能够设置成gbk来输入中文)
例子: coding gbk
  • static : 跳转到该程序提供的动态服务器网页
  • scp : 上传或下载文件

应用scp ./test.txt命令开启下载流程,从服务器上terminal当前工作的目录下载文件到本地

应用scp ./命令启动抉择文件窗口,上传本地文件到服务器上terminal当前工作的目录

  • vim : 在网页实现的简略编辑器,能够间接编辑服务器上的文件

  • 其余 : 除了这些你还能够间接执行服务器执行的所有命令

4. 启动参数

您能够在服务器启动该程序的时候给一些参数来批改一些默认行为,反对的参数如下

port : 设置terminal运行的端口 (默认为777)

shell : 默认应用的shell

coding : 默认应用的编码

static : 是否在当前目录启动动态资源服务器 (默认为true)

pass : 网页terminal的明码,如果你心愿关上网页时候输出明码来确认身份能够设置一个明码(默认没有明码,轻易一个人关上就能够用)

例子: 启动要给默认应用gbk编码的powershell,并且明码为5555,带了动态资源服务器的terminal

参考连贯

该程序以学习为目标浏览以下内容,并依据学习到常识用golang和javascript实现,感兴趣能够点击关上看看。

  • character-set conversion library implemented in Go
  • A fast, well-tested and widely used WebSocket implementation for Go.
  • How do I get the local IP address in Go?
  • How to generate an MD5 file hash in JavaScript/Node.js?
  • Using HTML5/JavaScript to generate and save a file