国产激情自拍_国产9色视频_丁香花在线电影小说观看 _久久久久国产精品嫩草影院

首頁 > 編程 > Golang > 正文

Go語言的os包中常用函數(shù)初步歸納

2020-04-01 19:25:33
字體:
供稿:網(wǎng)友
這篇文章主要介紹了Go語言的os包中常用函數(shù)初步歸納,用于一些和系統(tǒng)交互功能的實(shí)現(xiàn),需要的朋友可以參考下
 

(1)os.Getwd函數(shù)原型是func Getwd() (pwd string, err error) 返回的是路徑的字符串和一個(gè)err信息,為什么先開這個(gè)呢?因?yàn)槲铱磑s的包的時(shí)候第一個(gè)是Chkdir這個(gè)包,但是你不知道當(dāng)前目錄怎么知道改變目錄了呢?所以先說Getwd() 函數(shù)demo

復(fù)制代碼代碼如下:

import (
 "fmt"
 "os"
)

 

func main() {
 dir, _ := os.Getwd()
 fmt.Println("當(dāng)前的目錄是:", dir)  //當(dāng)前的目錄是: D:/test 我的環(huán)境是windows 如果linix 就是/xxx/xxx
}


(2)既然說了Getwd()了,我們就把os里邊的Get全部都說了吧!os.Getenv()獲取系統(tǒng)的環(huán)境變量,函數(shù)原型是func Getenv(key string) string輸入的是一個(gè)string的環(huán)境變量名稱,返回的是值
復(fù)制代碼代碼如下:

import (
 "fmt"
 "os"
)

 

func main() {
 path := os.Getenv("GOPATH")
 fmt.Println("環(huán)境變量GOPATH的值是:", path) //windows下 環(huán)境變量PATH的值是: D:/test;C:/Go/bin; linux 環(huán)境變量GOPATH的值是: /data/goweb
}


(3)下邊的get信息 如果沒有:=的就是返回的都是int一般很少用到的 我就給注釋了做什么的?然后windows和linux結(jié)果是什么?
 fmt.Println(os.Getegid())      windows -1  linux  0     //調(diào)用者的group的id
 fmt.Println(os.Geteuid())     windows -1  linux  0     //用戶的uid 
 fmt.Println(os.Getgid())      windows -1  linux  0     //調(diào)用者的gid的id
 g, _ := os.Getgroups()        
 fmt.Println(g)                windows []  linux  []    //返回的是一個(gè)[]int的切片 顯示調(diào)用者屬于組的一系列id
 fmt.Println(os.Getpagesize())  windows 4096linux  4096  //windows里邊叫做虛擬內(nèi)存 linux里邊叫做swap
 fmt.Println(os.Getppid())      windows -1  linux  8621  //調(diào)用者的組的進(jìn)程id
 fmt.Println(os.Getuid())    windows -1  linux  0  //調(diào)用者的數(shù)字用戶id
(4)os.Chdir()這個(gè)函數(shù)的原型是func Chdir(dir string) error 輸入字符類型,返回的是錯(cuò)誤結(jié)果,如果改變成功了error=nil
復(fù)制代碼代碼如下:

import (
 "fmt"
 "os"
)

 

func main() {
 fmt.Println(os.Getwd())              //顯示當(dāng)前的目錄 D:/test <nil>
 fmt.Println(os.Chdir("D:/test/src")) //返回<nil>正確切換目錄了
 fmt.Println(os.Getwd())              //切換后的目錄D:/test/src <nil>
}


(5)os.Stat()這個(gè)函數(shù)是獲取文件的信息,函數(shù)函數(shù)的原型func Stat(name string) (fi FileInfo, err error)輸出是文件的名稱返回一個(gè)FileInfo的接口和err信息,上一個(gè)分析ioutil的時(shí)候我們就介紹FileInfo的接口類型了
復(fù)制代碼代碼如下:

type FileInfo interface {
    Name() string       // 文件的名稱
    Size() int64        // 唱過文件的大小
    Mode() FileMode     // 文件的權(quán)限
    ModTime() time.Time // 時(shí)間
    IsDir() bool        // 是否是目錄
    Sys() interface{}   // 基礎(chǔ)數(shù)據(jù)源接口(can return nil)
}
import (
 "fmt"
 "os"
)

 

func main() {
 filemode, _ := os.Stat("widuu.go")  
 fmt.Println(filemode.Mode())        //獲取權(quán)限 linux 0600
}


(6)os.Chmod()這個(gè)函數(shù)的原型是func Chmod(name string, mode FileMode) error改變文件的屬性 譬如讀寫,linux上的0755這樣大家可以理解了吧
復(fù)制代碼代碼如下:

import (
 "fmt"
 "os"
)

 

func main() {
 filemode, _ := os.Stat("widuu.go")  
 fmt.Println(filemode.Mode())        //獲取權(quán)限 linux 0600
 err := os.Chmod("widuu.go", 0777)   //改變的是文件的權(quán)限
 if err!=nil{
  fmt.Println("修改文件權(quán)限失敗")
 }
 filemode, _ = os.Stat("widuu.go")  
 fmt.Println(filemode.Mode())        //獲取權(quán)限是0777

}


(7)os.Chtime()這個(gè)包,函數(shù)的原形是func Chtimes(name string, atime time.Time, mtime time.Time) error 輸入string的文件的名稱 訪問時(shí)間 創(chuàng)建時(shí)間 返回的是error接口信息
復(fù)制代碼代碼如下:

import (
 "fmt"
 "os"
 "time"
)

 

func main() {
 err := os.Chtimes("2.go", time.Now(), time.Now())  //改變時(shí)間
 if err != nil {
  fmt.Println(err)
 }
 fi, _ := os.Stat("2.go")
 fmt.Println(fi.ModTime())   //輸出時(shí)間 2013-12-29 20:46:23.0005257 +0800 +0800
}


(8)os.Environ()的作用是獲取系統(tǒng)的環(huán)境變量,函數(shù)原形是func Environ() []string返回是環(huán)境變量的[]string切片,說道這個(gè)就要和其他的一起說明了,那就是os.ClearEnv()清空環(huán)境變量
復(fù)制代碼代碼如下:

func main() {
 data := os.Environ() //輸出之前的環(huán)境變量 APPDATA=C:/Users/xiaolvge/AppData/Roaming CLASSPATH=.;D:/java/jdk1.6.0_38…………
 fmt.Println(data)
 os.Clearenv() //清空環(huán)境變量
 data = os.Environ()
 fmt.Println(data) //輸出[]string類型的切片[]
}

(9)os.Exit()就是中斷程序返回自定義的int類型的代碼,函數(shù)運(yùn)行是func Exit(code int)輸入一個(gè)int的值就可以了
復(fù)制代碼代碼如下:

import (
 "fmt"
 "os"
)

 

func main() {
 func() {
  for {
   fmt.Println("這個(gè)是匿名函數(shù)")
   os.Exit(1)    //輸出exit status 1中斷操作
  }
 }()
}


(10)函數(shù)os.Expand()這個(gè)其實(shí)就是一個(gè)回調(diào)函數(shù)替換的方法,函數(shù)的原形是func Expand(s string, mapping func(string) string) string 輸入的是一個(gè)string。對應(yīng)的是func(string)string的替換字符串的方法,如果沒有字符就替換為空
復(fù)制代碼代碼如下:

import (
 "fmt"
 "os"
)

 

func main() {
 mapping := func(s string) string {
  m := map[string]string{"widuu": "www.56wlw.com", "xiaowei": "widuu"}
  return m[s]
 }
 data := "hello $xiaowei blog address $widuu"
 fmt.Printf("%s", os.Expand(data, mapping)) //輸出hello widuu blog address www.56wlw.com}


(11)os.ExpandEnv()把字符串的s替換成環(huán)境變量的內(nèi)容,函數(shù)的原形是func ExpandEnv(s string) string,輸入的當(dāng)然是要替換的字符,輸出的當(dāng)然還是字符串了
復(fù)制代碼代碼如下:

import (
 "fmt"
 "os"
)

 

func main() {
 data := "GOBIN PATH $GOBIN"
 fmt.Println(os.ExpandEnv(data)) //輸出我本地的環(huán)境變量的GOBIN的地址GOBIN PATH C:/Go/bin
}


(12)os.Hostname()這個(gè)函數(shù)看字面的思意就懂了,是返回主機(jī)的HostName(),函數(shù)的原形是func Hostname() (name string, err error)返回主機(jī)名字和一個(gè)error的接口信息
復(fù)制代碼代碼如下:

import (
 "fmt"
 "os"
)

 

func main() {
 data, _ := os.Hostname()
 fmt.Println(data) //我是windows環(huán)境下返回我的win的主機(jī)名 WIDUU
}

 

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
国产激情自拍_国产9色视频_丁香花在线电影小说观看 _久久久久国产精品嫩草影院
亚洲欧美日韩综合精品网| 黄色毛片在线| 国产麻豆一区二区三区精品| 夜夜嗨yeyeh| av福利在线观看| av影视在线看| 久久综合第一页| 国产一级黄色大片| 精品视频一二区| www.操操操.com| 国产精品自拍亚洲| 国产香蕉视频在线看| 999精品网| 黄色片免费在线| 精品av中文字幕在线毛片| 亚洲精品自拍区在线观看| 成人精品福利| 国产高清av在线| 久热av在线| 精品国产福利一区二区在线| 亚洲精品手机在线| 国产网站免费观看| 蜜桃视频网站在线| 国产成人亚洲综合小说区| 青青草视频免费在线观看| 国产欧美在线观看视频| 三级小说一区| 97一区二区三区| 国产一级黄色片免费| 欧美性xxxx交| 在线视频中文字幕第一页| 天天操天天艹| 在线观看的av| 中文字幕日本三级| 免费国产阿v视频在线观看| 国产成人精品久久一区二区小说 | 超碰免费在线| 91精品专区| 国产情侣高潮对白| 天天爱天天做色综合| 本道综合精品| 天天激情综合| 午夜在线网站| 四虎成人免费| 美女网站在线观看| 天海翼中文字幕| 亚洲欧美自拍另类| 波多野结衣中文字幕久久| 亚洲夜夜综合| h网址在线观看| av片在线观看| 亚洲电影先锋| 亚洲第一成人在线视频| 天堂在线国产| 免费在线超碰| 最近高清中文在线字幕在线观看| 国产在线视频网站| 国产免费网址| 国产一区二区三区不卡免费观看 | 精品一区二区三区高清免费不卡| 导航福利在线| 国产女主播在线观看| 国产精品入口麻豆免费| 国产va在线观看| 午夜羞羞小视频在线观看| а√天堂8资源在线官网| 国产在线高潮| 国产精品毛片一区二区三区四区| 91桃色在线| 欧美日韩视频精品二区| 丁香花在线电影小说观看| 激情四房婷婷| 国产福利在线看| 99在线视频影院| 国产九九九九| av在线首页| 国产福利免费观看| 欧美午夜电影一区二区三区| 国产视频资源| 激情丁香婷婷| av人人综合网| 国产激情小视频在线| 日本亚洲欧美| 国产精品99999| 国产在线一二| 久久五月精品中文字幕| 国产精品四虎| 国产系列电影在线播放网址| 免费特级黄毛片| 国产不卡一卡2卡三卡4卡5卡在线| 成年黄网站在线观看免费| 精品欧美色视频网站在线观看| 美女网站在线观看| av免费在线播放| 国产精品麻豆一区二区三区 | www.大网伊人| 在线免费观看污| 国产精品蜜臀| 国产成人无吗| 国产精品一区二区婷婷| 日韩a视频在线观看| 在线观看免费高清完整| 精品卡一卡卡2卡3网站| 国产福利热线视频| 国产黄色免费电影| 国产亚洲精品自在线观看| 狠狠操天天操夜夜操| av亚洲在线| 日本电影全部在线观看网站视频| av二区三区| 四虎国产精品永久地址998| 亚洲天堂视频在线观看免费| 在线国产1区| 青青草原av在线| av在线天天| 免费99热在线观看| 国产免费网址| 国产精品视频一区二区免费不卡 | 国产一二三区在线观看| 国产精品人人| 中文在线官网天堂| 日本成a人片在线观看| 成年黄网站在线观看免费| 国产在线超碰| 97国产在线| 超碰97在线免费观看| 国产精品一区在线看| 国产黄色在线网站| 亚洲第一成人在线视频| 国产男女av| 在线一区二区三区精品| 久久99国产视频| 国产精品久久久久久精| 日本不卡视频一区二区| 国产一起色一起爱| av免费在线观看网站| 国产理论在线观看| 亚色视频在线观看| 天天操人人干| 亚洲大香人伊一本线| 国产亚洲精品久久久久久青梅| 在线免费看黄网站| 国产一级黄色片免费| 99高清免费国产自产拍| 国产免费av在线| a√在线视频| 国产人成精品| 最近中文字幕mv免费高清在线| 91在线最新| 国产一级在线观看| 国产精品㊣新片速递bt| 日日夜夜中文字幕| av文字幕在线观看| ·天天天天操| 国产福利三区| 国产小视频在线播放| 国产美女高潮一区二区三区| 在线观看wwww| 国产精品白浆视频免费观看| 久久久久久五月天久久久久久久久| 在线观看的网站你懂的| 国产精品久久麻豆| 国产精品毛片一区二区三区四区| 国产乱妇乱子在线播视频播放网站| 四虎成人精品在永久免费| 亚洲精品视频在线免费| 精品国产白色丝袜高跟鞋| 国产精品白浆视频免费观看| 国产精品欧美色图| 国产黄色在线看| 伊人222成人综合网| 国产高清免费av在线| 国产二级片在线| 尤物免费看在线视频| 天堂在线免费观看| 88av在线| av福利在线播放| 四虎a级欧美在线观看| www在线播放| 超碰免费在线| 国产写真视频在线观看| 国产黄色在线网站| 亚洲成人av高清| 好看的中文字幕在线播放| 国产在线色视频| 日韩av成人| 在线视频中文字幕| 美女网站在线观看| 中文字幕日本在线| 亚洲网站视频在线观看| 六月天色婷婷| 国产网站av| 精品99又大又爽又硬少妇毛片| 亚洲视频网站在线| 国产蜜臀在线| 99在线视频影院| 国产美女福利在线观看| 精品51国产黑色丝袜高跟鞋| 超碰在线97国产| 在线国产网址|