2017-07-03 168 views
1

到已經打開的FD我有以下的開FD(lsof的輸出):如何寫golang

auth 11780 root 5w FIFO    0,10  0t0 72061824 pipe 

我需要寫在FD 5(FIFO)中去的東西。在C中,它由系統調用write()執行:

19270 write(5, "*************", 12 <unfinished ...> 

預先感謝您!

+0

FD 5由父進程打開。 –

回答

1

使用os.NewFile由其文件描述符「打開」現有的文件:

func NewFile(fd uintptr, name string) *File 

NEWFILE返回給定的文件描述符和名稱的新文件。

file := os.NewFile(5, "pipe") 
_, err := file.Write([]byte(`my data`)) 
if err != nil { 
    panic(err) 
}