golang package os

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/youshijian99/article/details/85685261

import “os”

func Getenv(key string) string

Getenv检索并返回名为key的环境变量的值。如果不存在该环境变量会返回空字符串。

root@vm:~# echo $HOME
/root

package main

import (
	"fmt"
	"os"
	"os/user"
)

func main() {

	home := os.Getenv("HOME")
	fmt.Println(home)
}

运行结果:
/root


package user
import “os/user”

func Current() (*User, error)

返回当前的用户帐户。

type User struct {
    Uid      string // 用户ID
    Gid      string // 初级组ID
    Username string
    Name     string
    HomeDir  string
}

User代表一个用户帐户。
在posix系统中Uid和Gid字段分别包含代表uid和gid的十进制数字。在windows系统中Uid和Gid包含字符串格式的安全标识符(SID)。在Plan 9系统中,Uid、Gid、Username和Name字段是/dev/user的内容。

package main

import (
	"fmt"
	"os/user"
)

func main() {
	usr, _ := user.Current()
	fmt.Println(usr.HomeDir)
	fmt.Println(usr)
}

运行结果:
/root
&{0 0 root root /root}


func MkdirAll(path string, perm FileMode) error

MkdirAll使用指定的权限和名称创建一个目录,包括任何必要的上级目录,并返回nil,否则返回错误。权限位perm会应用在每一个被本函数创建的目录上。如果path指定了一个已经存在的目录,MkdirAll不做任何操作并返回nil。

package main

import (
	"fmt"
	"os"
	"path/filepath"
)

func main() {
	home := os.Getenv("HOME")
	fmt.Println(home)
	dir := filepath.Join(home, ".tttttt")
	fmt.Println(home)
	fmt.Println(dir)
	err := os.MkdirAll(dir, 0700)
	fmt.Println(err)
}

运行结果:
/root
/root
/root/.tttttt

在home目录下创建一个目录为 .tttttt

猜你喜欢

转载自blog.csdn.net/youshijian99/article/details/85685261