說我有一個文件:i_want_this_name.go:package mainfunc main(){ filename := some_func() // should be "i_want_this_name"}如何在 go 中獲取執行代碼的文件名?
2 回答

慕的地8271018
TA貢獻1796條經驗 獲得超4個贊
命令的名稱可以在 os 包os.Args[0]的文檔中的狀態中找到:
var Args []string
Args 保存命令行參數,從程序名稱開始。
要使用它,請執行以下操作:
package main
import "os"
func main(){
filename := os.Args[0]
}

阿晨1998
TA貢獻2037條經驗 獲得超6個贊
這應該適合你:
package main
import (
"fmt"
"runtime"
)
func main() {
_, fileName, lineNum, _ := runtime.Caller(0)
fmt.Printf("%s: %d\n", fileName, lineNum)
}
- 2 回答
- 0 關注
- 313 瀏覽
添加回答
舉報
0/150
提交
取消