go调用windows命令

调用Windows命令

这是我的第一个go语言脚本,标记一下。

package main

import (
    "fmt"
    "log"
    "os/exec"

    "golang.org/x/text/encoding/simplifiedchinese"
)

type Charset string

const (
    UTF8    = Charset("UTF-8")
    GB18030 = Charset("GB18030")
)

func ConvertByte2String(byte []byte, charset Charset) string {

    var str string
    switch charset {
    case GB18030:
        var decodeBytes, _ = simplifiedchinese.GB18030.NewDecoder().Bytes(byte)
        str = string(decodeBytes)
    case UTF8:
        fallthrough
    default:
        str = string(byte)
    }

    return str
}
func main() {
    cmd := exec.Command("sh", "-c", "tasklist; ls -l")
    stdoutStderr, err := cmd.CombinedOutput()
    if err != nil {
        log.Fatal(err)
    }
    fmt.Printf("%s\n", ConvertByte2String(stdoutStderr, GB18030))
}

参考资料

https://golang.org/pkg/os/exec/#example_Cmd_CombinedOutput

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 2017年2月编程语言排行榜 http://www.cocoachina.com/programmer/20170...
    单纯的敲代码阅读 3,878评论 0 0
  • go build 这个命令主要用于编译代码。在包的编译过程中,若有必要,会同时编译与之相关联的包。 如果是普通包,...
    今早上阅读 670评论 0 3
  • 本文简单介绍 Golang 提供的命令。我们执行 go help [command] 可以查看具体命令的帮助信息。...
    juniway阅读 2,233评论 0 2
  • 1. 分布式系统核心问题 参考书籍:《区块链原理、设计与应用》 一致性问题例子:两个不同的电影院买同一种电影票,如...
    molscar阅读 1,005评论 0 0
  • 一 从诸暨千柱屋到新昌,已经晚5点了。大小朋友们决定还是要到大佛景区去一下。既然是七年之约的难得聚会,那一定不能落...
    丁若木阅读 438评论 0 8

友情链接更多精彩内容