猿问

如何在go中获取执行代码的文件名?

说我有一个文件:


i_want_this_name.go:


package main


func main(){

    filename := some_func() // should be "i_want_this_name"

}

如何在 go 中获取执行代码的文件名?


开满天机
浏览 273回答 2
2回答

慕的地8271018

命令的名称可以在 os 包os.Args[0]的文档中的状态中找到:var Args []stringArgs 保存命令行参数,从程序名称开始。要使用它,请执行以下操作:package mainimport "os"func main(){    filename := os.Args[0]}

阿晨1998

这应该适合你:package mainimport (  "fmt"  "runtime")func main() {  _, fileName, lineNum, _ := runtime.Caller(0)  fmt.Printf("%s: %d\n", fileName, lineNum)}
随时随地看视频慕课网APP

相关分类

Go
我要回答