Analyse du cas d'application de surveillance des fichiers Golang et étapes de mise en œuvre
1. Introduction
La surveillance des fichiers est l'une des fonctions courantes des systèmes informatiques. En surveillant les modifications des fichiers, vous pouvez obtenir des modifications de fichiers en temps opportun pour certaines applications. nécessiter du temps réel Très utile pour surveiller les scénarios de fichiers. Cet article expliquera comment utiliser Golang pour implémenter une application simple de surveillance de fichiers, et donnera des étapes de mise en œuvre détaillées et des exemples de code.
2. Étapes de mise en œuvre
import ( "os" "time" )
watchFile
pour surveiller les modifications de fichiers et imprimer l'heure de la dernière modification du fichier et les changements de taille du fichier. watchFile
来监控文件的变动,并打印出文件的最后修改时间和文件大小的变化情况。func watchFile(filepath string) { file, err := os.Open(filepath) if err != nil { fmt.Println("Error opening file:", err) return } defer file.Close() fileinfo, _ := file.Stat() lastModTime := fileinfo.ModTime() fileSize := fileinfo.Size() for { time.Sleep(1 * time.Second) fileinfo, _ := file.Stat() if fileinfo.ModTime() != lastModTime { fmt.Println("File modified at:", fileinfo.ModTime()) lastModTime = fileinfo.ModTime() } if fileinfo.Size() != fileSize { fmt.Println("File size changed to:", fileinfo.Size()) fileSize = fileinfo.Size() } } }
watchFile
函数watchFile
func main() { filepath := "test.txt" watchFile(filepath) }
watchFile
dans la fonction principaleEnfin, appelez la fonction watchFile
dans la fonction principale et transmettez le fichier à surveiller le chemin de.
Hello, World!
3. Application de cas
Maintenant, regardons une application de cas réelle. Supposons que nous ayons un fichier "test.txt" avec le contenu suivant :Hello, Golang!
Hello, Gopher!
rrreee
De même, la console affichera la dernière heure de modification et les modifications de contenu du fichier.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!