Golang os/user.User type, Current(), Lookup and LookupId() functions example

package os/user

Golang os/user.User type, Current(), Lookup and LookupId() functions usage example.

NOTE : Useful in looking up a user's home directory.

 package main

 import (
 "fmt"
 "os/user"
 )

 func main() {
 usr, err := user.Current()

 if err != nil {
 panic(err)
 }

 fmt.Println("Uid : ", usr.Uid)

 fmt.Println("Gid : ", usr.Gid)

 fmt.Println("Username : ", usr.Username)

 fmt.Println("Name : ", usr.Name)

 fmt.Println("HomeDir: ", usr.HomeDir)

 fmt.Println("========user.Lookup()======================")

 lookupUsr, err := user.Lookup(usr.Username)

 fmt.Println("Uid : ", lookupUsr.Uid)

 fmt.Println("Gid : ", lookupUsr.Gid)

 fmt.Println("Username : ", lookupUsr.Username)

 fmt.Println("Name : ", lookupUsr.Name)

 fmt.Println("HomeDir: ", lookupUsr.HomeDir)

 fmt.Println("========user.LookupId()======================")

 lookupidUsr, err := user.LookupId(usr.Uid)

 fmt.Println("Uid : ", lookupidUsr.Uid)

 fmt.Println("Gid : ", lookupidUsr.Gid)

 fmt.Println("Username : ", lookupidUsr.Username)

 fmt.Println("Name : ", lookupUsr.Name)

 fmt.Println("HomeDir: ", lookupUsr.HomeDir)
 }

References:

http://golang.org/pkg/os/user/#Current

http://golang.org/pkg/os/user/#Lookup

http://golang.org/pkg/os/user/#LookupId

Advertisement