Go語言的os包中常用函式初步歸納

2022-09-24 21:12:09 字數 3380 閱讀 7717

(1)os.getwd函式原型是func getwd() (pwd string, err error) 返回的是路徑的字串和乙個err資訊,為什麼先開這個呢?因為我看os的包的時候第乙個是chkdir這個包,但是你不知道當前目錄怎麼知道改變目錄了呢?所以先說getwd() 函式demo

複製** **如下:

import (

"fmt"

"os"

)func main()

(2)既然說了getwd()了,我們就把os裡邊的get全部都說了吧!os.getenv()獲取系統的環境變數,函式原型是func getenv(key string) string輸入的是乙個string的環境變數名稱,返回的是值

複製** **如下:

import (

"fmt"

"os"

)func main()

(3)下邊的get資訊 如果沒有:=的就是返回的都是int一般很少用到的 我就給注釋了做什麼的?然後windows和linux結果是什麼?

fmt.println(os.getegid())      windows -1  linux  0     //呼叫者的group的id

fmt.println(os.geteuid())     windows -1  linux  0     //使用者的uid

fmt.println(os.getgid())      windows -1  linux  0     //呼叫者的gid的id

g, _ := os.getgroups()       

fmt.println(g)                windows   linux      //返回的是乙個int的切片 顯示呼叫者屬於組的一系列id

fmt.println(os.getpagesize())  windows 4096linux  4096  //windows裡邊叫做虛擬記憶體 linux裡邊叫做swap

fmt.println(os.getppid())      windows -1  linux  8621  //呼叫者的組的程序id

&nwww.cppcns.combsp;fmt.println(os.getuid())    windows -1  linux  0  //呼叫者的數字使用者id

(4)os.chdir()這個函式的原型是func chdir(dir string) error 輸入字元型別,返回的是錯誤結果,如果改變成功了error=nil

複製** **如下:

import (

"fmt"

"os"

)func main()

(5)os.stat()這個函式是獲取檔案的資訊,函式函式的原型func stat(name string) (fi fileinfo, err error)輸出是檔案的名稱返回乙個f程式設計客棧ileinfo的介面和err資訊,上乙個分析ioutil的時候我們就介紹fileinfo的介面型別了

複製** **如下:

type fileinfo inte***ce    // 基礎資料來源介面(can return nil)

}import (

"fmt"

"os"

)func main()

(6)os.chmod()這個函式的原型是func chmod(name string, mode filemode) error改變檔案的屬性 譬如讀寫,linux上的0755這樣大家可以理解了吧

複製** **如下:

import (

"fmt"

"os"

)func main()

filemode, _ = os.stat("widuu.go") 

fmt.println(filemode.mode())        //獲取許可權是0777

}(7)os.chtime()這個包,函式的原形是func chtimes(name string, atime time.time, mtime time.time) error 輸入string的檔案的名稱 訪問時間 建立時間 返回的是error介面資訊

複製** **如下:

import (

"fmt"

"os"

"time"

)func main()

fi, _ := os.stat("2.go")

fmt.println(fi.modtime())   //輸出時間 2013-12-29 20:46:23.0005257 +0800 +0800

}(8)os.environ()的作用是獲取系統的環境變數,函式原形是func environ() string返回是環境變數的string切片,說道這個就要和其他的一起說明了,那就是os.clearenv()清空環境變數

複製** **如下:

func main()

(9)os.exit()就是中斷程式返回自定義的int型別的**,函式執行是func exit(code int)輸入乙個int的值就可以了

複製** **如下:

import (

"fmt"

"os"

)func main()

}()}(10)函式os.expand()這個其實就是乙個**函式替換的方法,函式的原形是func expand(s string, mapping func(string) string) string 輸入的是乙個string。對應的是func(string)string的替換字串的方法,如果沒有字元就替換為空

複製** **如下:

import (

"fmt"

"os"

)func main()

return m[s]

} data := "hello $xiaowei blog address $widuu"

fmt.printf("%s", os.expand(data, mapping)) //輸出hello widuu blog address www.jb51.net}

(11)os.expandenv()把字串的s替換成環境變數的內容,函式的原形是func expandenv(s string) string,輸入的當然是要替換的字元,輸出的當然還是字串了

複製** **如下:

import (

"fmt"

"os"

)func main()

(12)os.hostname()這個函式看字面的思意就懂了,是返回主機的hostname(),函式的原形是func hostname() (name string, err error)返回主機名字和乙個error的介面資訊

複製** **如下:

import (

"fmt"

"os"

)func main()

本文標題: go語言的os包中常用函式初步歸納

本文位址:

舉例詳解Go語言中os庫的常用函式用法

f file name 這個函式是返回檔案的名稱,函式原型func f file name string要檔案的指標操作,返回字串,感覺比較雞助的方法底層實現 複製 如下 func f file name string import fmt os func main f file read 這個是函...

go語言常用函式

示例1 1 arr1 int 3 fmt.println arr2 輸出 1,2,3,4,5,6 1 arr1 int 2 arr2 int 4 fmt.println arr3 輸出 1,2,3,4,5,6 copy 用於從乙個陣列切片複製到另乙個陣列切片。如果加入的兩個陣列切片不一樣大,就會按其...

Go語言的初步認識

go語言是來自google的一門語言,go語言的一些開源專案如下 關於go語言的一些內容如下 go語言的幫助文件可以進行安裝後使用命令找出,例如檢視go語言hash的命令如下 如果需要檢視原始碼,就加乙個引數。如下 第乙個go語言的程式如下 go語言的源 可以直接執行,如下命令 也可以先進行編譯成可...