下面是Golang常用的一些操作,获取环境变量、操作文件等等;
package main
import (
"fmt"
"os"
"path/filepath"
"io/ioutil"
)
func main () {
//将当前路径和给定的路径连接成绝对路径
absPath,_ := filepath.Abs("test")
fmt.Println(absPath)
//返回路径中最后的那个路径(通常是目录名或者文件名)
basePath := filepath.Base(absPath)
fmt.Println(basePath)
//返回除最后的目录之外的路径(即最后的目录之前的路径)
dirPath := filepath.Dir(absPath)
fmt.Println(dirPath)
//返回带文件名的路径中的文件后缀名(如.txt)
file := "C:\\1.txt"
fileName := filepath.Ext(file)
fmt.Println(fileName)
//将路径中的'/'替换为'\',多个'/'替换为多个'\\'
slash := filepath.FromSlash("D://GoProject//src//example//test")
fmt.Println(slash)
//连接路径成为一个完整路径
joinPath := filepath.Join("C:\\Go\\test","example")
fmt.Println(joinPath)
//输出执行程序名(test_filepath.exe)
fmt.Println(filepath.Base(os.Args[0]))
//输出执行程序的信息
fmt.Println(os.Stat(os.Args[0]))
//获取某个目录下的子目录
list,err := ioutil.ReadDir("D:\\GoProject\\src\\example")
if err != nil {
fmt.Println(err)
}
for _, item := range list {
if item.IsDir() {
fmt.Println(item.Name())
}
}
//判断当前进程的运行用户是否是root
fmt.Println(os.Geteuid())
//获取环境变量
fmt.Println(os.Getenv("JAVA_HOME"))
}
总结:Golang的基本操作比较多,比如文件操作,非常细致,详细内容请参考Golang API。API : https://golang.org/doc/