写一个golang的commands库

版权声明:本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。转载时请标注http://guoruibiao.blog.csdn.net https://blog.csdn.net/Marksinoberg/article/details/89892577

Commands

reference from commands in Python. Do some commands if you need, with optional choice of Status and Output.

Support features

  • Run(command string, args...string) without any output
  • GetOutput(command string, args...string) (output string) with output of command
  • GetStatusOutput(command string, args...string) (status bool, output string) with status and output of commands

Demos

package main

import (
	"fmt"
	"runtime"

	"github.com/guoruibiao/commands"
)

func main() {
	c := commands.New()
	c.Run("ls", "-ltrha")
	output := c.GetOutput("ls", "-ltrha")
	fmt.Println(output)
	status, output := c.GetStatusOutput("du", "-ah")
	fmt.Println("status: ", status)
	fmt.Println("output: ", output)

	// macOS上弹出一个notification
	if runtime.GOOS == "darwin" {
		c.Run("osascript", "-e", `display notification "内容体" with title "标题"`)
	} else {
		fmt.Println("其他操作系统弹出Notification的示例")
	}
}

There are also some new features to be added, so happy to see your PRs.

finally, enjoy it.

GitHub repository: https://github.com/guoruibiao/commands

展开阅读全文

没有更多推荐了,返回首页