版权声明:本文为博主原创文章,未经博主允许不得转载。 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