golang講解(go語言)標準庫分析之os(2)

來源:互聯網
上載者:User
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。

Golang標準庫

今天我們繼續昨天的繼續分析golang的os包但是今天由於我的時間比較緊所以可能分析的比較少,但是還是一樣的味道!

第一個我們分析的是os.Chtime()這個包,函數的原形是func Chtimes(name string, atime time.Time, mtime time.Time) error 輸入string的檔案的名稱 訪問時間 建立時間 返回的是error介面資訊
[php]
import (
"fmt"
"os"
"time"
)

func main() {
err := os.Chtimes("2.go", time.Now(), time.Now()) //改變時間
if err != nil {
fmt.Println(err)
}
fi, _ := os.Stat("2.go")
fmt.Println(fi.ModTime()) //輸出時間 2013-12-29 20:46:23.0005257 +0800 +0800
}
[/php]
第二個我們說的是os.Environ()擷取系統的環境變數,函數原形是func Environ() []string返回是環境變數的[]string切片,說道這個就要和其他的一起說明了,那就是os.ClearEnv()清空環境變數
[php]
func main() {
data := os.Environ() //輸出之前的環境變數 APPDATA=C:\Users\xiaolvge\AppData\Roaming CLASSPATH=.;D:\java\jdk1.6.0_38…………
fmt.Println(data)
os.Clearenv() //清空環境變數
data = os.Environ()
fmt.Println(data) //輸出[]string類型的切片[]
}

第三個說的是os.Exit()就是中斷程式返回自訂的int類型的代碼,函數運行是func Exit(code int)輸入一個int的值就可以了
[php]
import (
"fmt"
"os"
)

func main() {
func() {
for {
fmt.Println("這個是匿名函數")
os.Exit(1) //輸出exit status 1中斷操作
}
}()
}
[/php]
第四個函數os.Expand()這個其實就是一個回呼函數替換的方法,函數的原形是func Expand(s string, mapping func(string) string) string 輸入的是一個string。對應的是func(string)string的替換字串的方法,如果沒有字元就替換為空白
[php]
import (
"fmt"
"os"
)

func main() {
mapping := func(s string) string {
m := map[string]string{"widuu": "www.widuu.com", "xiaowei": "widuu"}
return m[s]
}
data := "hello $xiaowei blog address $widuu"
fmt.Printf("%s", os.Expand(data, mapping)) //輸出hello widuu blog address www.widuu.com
}
[/php]
第五個函數跟第四個差不多但是很簡單,os.ExpandEnv()把字串的s替換成環境變數的內容,函數的原形是func ExpandEnv(s string) string,輸入的當然是要替換的字元,輸出的當然還是字串了
[php]
import (
"fmt"
"os"
)

func main() {
data := "GOBIN PATH $GOBIN"
fmt.Println(os.ExpandEnv(data)) //輸出我本地的環境變數的GOBIN的地址GOBIN PATH C:\Go\bin
}
[/php]
第六個是os.Hostname()這個函數看字面的思意就懂了,是返回主機的HostName(),函數的原形是func Hostname() (name string, err error)返回主機名稱字和一個error的介面資訊
[php]
import (
"fmt"
"os"
)

func main() {
data, _ := os.Hostname()
fmt.Println(data) //我是windows環境下返回我的win的主機名稱 WIDUU
}
[/php]
今天我們就講到這裡如果您喜歡我們,請關注我們

未經允許,不得轉載本站任何文章:微度網路 » golang講解(go語言)標準庫分析之os(2)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.