System.Environment.CurrentDirectory;
創(chuàng)新互聯(lián)專注于企業(yè)網(wǎng)絡(luò)營銷推廣、網(wǎng)站重做改版、懷柔網(wǎng)站定制設(shè)計、自適應(yīng)品牌網(wǎng)站建設(shè)、html5、商城網(wǎng)站開發(fā)、集團公司官網(wǎng)建設(shè)、外貿(mào)網(wǎng)站制作、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計等建站業(yè)務(wù),價格優(yōu)惠性價比高,為懷柔等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。
//例:?c:/test/
Application.ExecutablePath;(包括名稱)
//例:?c:/test/myapp.exe
Application.StartupPath;(不包括名稱)
//例:?c:/test/
絕對路徑是直接到達目標位置,通常是從盤符開始的路徑。完整的描述文件位置的路徑就是絕對路徑,以web站點根目錄為參考基礎(chǔ)的目錄路徑。
絕對路徑名的指定是從樹型目錄結(jié)構(gòu)頂部的根目錄開始到某個目錄或文件的路徑,由一系列連續(xù)的目錄組成,中間用斜線分隔,直到要指定的目錄或文件,路徑中的最后一個名稱即為要指向的目錄或文件。之所以稱為絕對,意指當所有網(wǎng)頁引用同一個文件時,所使用的路徑都是一樣的。
擴展資料
幾種編程語言獲取程序所在路徑的方法:
1、在golang程序里面獲取程序所在路徑:
package main
import (
"path/filepath"
"os"
"fmt"
"log"
)
func main() {
execDir, err := filepath.Abs(filepath.Dir(os.Args[0]))
if err = nil {
log.Fatal(err)
}fmt.Println(execDir)
}
2、python腳本所在路徑:
import os
print(os.path.split(os.path.realpath(__file__))[0])
3、shell腳本獲取腳本的絕對路徑:
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" pwd )"
先看一下目錄結(jié)構(gòu),注意這里的src名稱是必須的,go在設(shè)置了GOPATH后,默認會添加src去尋找package,暫未查詢是否有方法不按照src查詢
根據(jù)上面的描述,Go語言中通過包中函數(shù)的名稱來區(qū)分公共函數(shù)和私有函數(shù),我們在main函數(shù)中是無法調(diào)用myPrivateFunc的
此時如果執(zhí)行通過go run方式執(zhí)行,會看到如下的提示信息,這與大部分語言對于包管理方式相關(guān),所以我們通過兩種不同的方法來讓代碼執(zhí)行起來
返回如下,這里面對我們后續(xù)執(zhí)行有影響的兩個參數(shù)GO111MODULE和GOPATH
如果要使用gopath模式引用包,則需要關(guān)閉mod模式
設(shè)置GOPATH為當前路徑,即main.go所在的路徑
此時再查看go env時,GOPATH已經(jīng)發(fā)生改變
我們再次嘗試執(zhí)行代碼
可以看到public函數(shù)被調(diào)用
這個方法獲取的是執(zhí)行文件的目錄,如果執(zhí)行文件demo 是在/home/golang文件夾下面
我們在/目錄執(zhí)行
./home/golang/demo 這樣輸出的os.Getwd()不會是/home/golang,而是/
pwd,_:=filepath.Abs(filepath.Dir(os.Args[0]))
使用這個,獲取到的目錄是/home/golang
如果是在本地開發(fā)調(diào)試,這兩個方法獲取的到路徑是一樣的,因為我們就在自己的項目目錄做調(diào)試,
但是如果構(gòu)建后當做程序運行, 這兩個表現(xiàn)的效果是有區(qū)別的 ,
在讀取配置文件,打印log等需要獲取目錄的地方,需要根據(jù)實際情況選擇使用的方法,一般來說用
filepath.Abs(filepath.Dir(os.Args[0]))的地方會多一點,因為這個是一個固定的目錄,而os.Getwd(),會因為我們執(zhí)行命令的目錄不一樣而不一樣。
os.Args[0]是執(zhí)行文件路徑,在調(diào)試的時候,是一個臨時目錄
os.Args[1,2,3,4...]后面就是我們自己接的參數(shù)了
比如
go run main.go single lvhuxu
os.Args[1] = single
os.Args[2] = lvhuxu
1.?在工作列上按鼠標右鍵,選"啟動任務(wù)管理器"
2. 先選進程頁簽,再到要查看路徑的進程上按鼠標右鍵,選"屬性"
3. 見下圖紅框標示處,即為該進程的路徑
二進制包安裝的話:如果安裝在了默認位置例如/usr/local/go (Windows系統(tǒng):c:\Go)這個時候可以不需要設(shè)置GOROOT,如果改變了安裝的這個默認目錄,那么就需要設(shè)置GOROOTGOROOT的概念有點Go安裝目錄的意思GOPATH是一個開發(fā)環(huán)境目錄的意思,下面必須包含bin、pkg、src,然后再src下面新建項目就可以了你在沒有設(shè)置GOPATH的情況下,也可以把項目建在GOROOT/src下面,其實和GOPATH的概念類似
分享題目:go語言獲取當前路徑 go import 路徑
URL鏈接:http://jinyejixie.com/article10/dochjgo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制開發(fā)、外貿(mào)建站、、ChatGPT、靜態(tài)網(wǎng)站、企業(yè)建站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)