parent
5fa0e8b06d
commit
7d990f1e74
@ -0,0 +1,27 @@
|
||||
package operaSystem
|
||||
|
||||
import "os"
|
||||
|
||||
// GetOsEnv 获取key命名的环境变量的值
|
||||
func (sys *OperaSystem) GetOsEnv(key string) string {
|
||||
return os.Getenv(key)
|
||||
}
|
||||
|
||||
// SetOsEnv sets the value of the environment variable named by the key.
|
||||
func (sys *OperaSystem) SetOsEnv(key, value string) error {
|
||||
return os.Setenv(key, value)
|
||||
}
|
||||
|
||||
// RemoveOsEnv remove a single environment variable.
|
||||
func (sys *OperaSystem) RemoveOsEnv(key string) error {
|
||||
return os.Unsetenv(key)
|
||||
}
|
||||
|
||||
// CompareOsEnv 获取key命名的环境变量值并与compareEnv进行比较
|
||||
func (sys *OperaSystem) CompareOsEnv(key, comparedEnv string) bool {
|
||||
env := sys.GetOsEnv(key)
|
||||
if env == "" {
|
||||
return false
|
||||
}
|
||||
return env == comparedEnv
|
||||
}
|
||||
@ -0,0 +1,28 @@
|
||||
package operaSystem
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"testing"
|
||||
)
|
||||
|
||||
func TestOperaSystem_GetOsEnv(t *testing.T) {
|
||||
fmt.Println(operaSystem.GetOsEnv("GOPATH"))
|
||||
fmt.Println(operaSystem.GetOsEnv("hello"))
|
||||
}
|
||||
|
||||
func TestOperaSystem_SetOsEnv(t *testing.T) {
|
||||
operaSystem.SetOsEnv("hello", "test")
|
||||
fmt.Println(operaSystem.GetOsEnv("hello"))
|
||||
}
|
||||
|
||||
func TestOperaSystem_RemoveOsEnv(t *testing.T) {
|
||||
operaSystem.SetOsEnv("hello", "test")
|
||||
operaSystem.RemoveOsEnv("hello")
|
||||
fmt.Println(operaSystem.GetOsEnv("hello"))
|
||||
}
|
||||
|
||||
func TestOperaSystem_CompareOsEnv(t *testing.T) {
|
||||
operaSystem.SetOsEnv("hello", "test")
|
||||
fmt.Println(operaSystem.CompareOsEnv("hello", "test"))
|
||||
fmt.Println(operaSystem.CompareOsEnv("hello", "test1"))
|
||||
}
|
||||
@ -0,0 +1,27 @@
|
||||
package operaSystem
|
||||
|
||||
import (
|
||||
"bytes"
|
||||
"os/exec"
|
||||
)
|
||||
|
||||
// ExecCommand 使用shell /bin/bash -c(linux) 或 cmd (windows) 执行shell命令
|
||||
func (sys *OperaSystem) Exec(command string) (stdout, stderr string, err error) {
|
||||
var out bytes.Buffer
|
||||
var errout bytes.Buffer
|
||||
|
||||
cmd := exec.Command("/bin/bash", "-c", command)
|
||||
if sys.IsWindows() {
|
||||
cmd = exec.Command("cmd")
|
||||
}
|
||||
cmd.Stdout = &out
|
||||
cmd.Stderr = &errout
|
||||
err = cmd.Run()
|
||||
|
||||
if err != nil {
|
||||
stderr = string(errout.Bytes())
|
||||
}
|
||||
stdout = string(out.Bytes())
|
||||
|
||||
return
|
||||
}
|
||||
@ -0,0 +1,13 @@
|
||||
package operaSystem
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"testing"
|
||||
)
|
||||
|
||||
func TestOperaSystem_Exec(t *testing.T) {
|
||||
out, errout, err := operaSystem.Exec("ping www.baidu.com")
|
||||
fmt.Println(out)
|
||||
fmt.Println(errout)
|
||||
fmt.Println(err)
|
||||
}
|
||||
Loading…
Reference in new issue