我需要知道如何使用Go來檢測文件何時(shí)發(fā)生更改。我知道Unix提供了一個名為的函數(shù)fcntl(),該函數(shù)會在更改特定文件時(shí)通知您,但是我在Go中找不到此函數(shù)。請幫我。
3 回答

慕后森
TA貢獻(xiàn)1802條經(jīng)驗(yàn) 獲得超5個贊
我想在peterSO的答案中加上一個事實(shí),即如果您實(shí)際上想讀取其他進(jìn)程(tail
在Unix中該程序執(zhí)行的操作)附加到文件中的數(shù)據(jù),那么最好讓tail
自己自己完成以下工作會更好:監(jiān)視文件并消耗其輸出。這可以通過tail
使用exec包中的StdoutPipe
函數(shù)運(yùn)行來實(shí)現(xiàn)。
tail
在我看來,使用這種任務(wù)是更可取的,因?yàn)?code>tail已被教導(dǎo)使用許多巧妙的技巧,包括檢測文件替換(通常在監(jiān)視由logrotate或類似方法旋轉(zhuǎn)的日志文件時(shí)發(fā)生)。
- 3 回答
- 0 關(guān)注
- 257 瀏覽
添加回答
舉報(bào)
0/150
提交
取消