某天,TX大侠说他找不到awn的配置文件在什么地方,问我知道不?而我只是在N年前用过一下下awn而已,所以,理所当然地不知道了。后来,我们想了一个土办法:
在$HOME下先执行一次
tree -as > /tmp/before
然后在awn的界面里修改一下配置,再在$HOME下再执行一次
tree -as > /tmp/after
然后再
diff /tmp/before /tmp/after
哈哈,别说,这样还真把需要的配置文件找到了。但是,谁看着这个方法,都多少会觉得有点别扭。
现在,我发现了这个可以监视文件系统的任何动作的工具: inotifywait (项目主页) 。
inotifywait 包含在gentoo的 sys-fs/inotify-tools 包里,其他发行版应该也是叫这个名字。
这个工具是使用linux内核的inotify调用,来实现监视功能的。所以你需要有2.6.13以上版本的内核,才会有这个调用。
像上例中,如果要找某个未知文件的该动的话,你可以监视整个$HOME目录,这样:
inotifywait -mr $HOME
现在你再修改awn的配置,或者打开/修改/删除任何$HOME及其子目录下的文件的话,终端都会显示出来。比如:
/home/lily/test/ CREATE abcd.txt /home/lily/test/ OPEN abcd.txt /home/lily/test/ ATTRIB abcd.txt /home/lily/test/ CLOSE_WRITE,CLOSE abcd.txt /home/lily/test/ MODIFY abcd.txt /home/lily/test/ OPEN abcd.txt /home/lily/test/ MODIFY abcd.txt /home/lily/test/ CLOSE_WRITE,CLOSE abcd.txt /home/lily/test/ DELETE abcd.txt
这个就是我在~/test下执行
touch abcd.txt && echo 111 > abcd.txt && rm abcd.txt
的时候的结果,很详细吧?
另外值得注意的是,如果你 $HOME 下的文件数目比较多,大于 /proc/sys/fs/inotify/max_user_watches 里的值(默认才8k)的话,inotifywait 就会提示超出限制,报错了。这时候你可以估算下总的文件数,然后手工修改上限值。
echo 170000 | sudo tee /proc/sys/fs/inotify/max_user_watches
我这边把上限改成了170000,发现CPU和内存的占用都还不是很明显,还是完全可以接受的。
PS:除了使用这个inotifywait以外,你也可以在自己的程序里直接调用内核的inotify完成某些特定的功能,而且python和perl都有相应的模块可以直接调了,更详细的介绍可以看这里(翻遍了google,好不容易才找到这原文啊,BS那些转载不注明原地址的,还有转了以后,不管代码格式却分成10来页骗点击量的)。
相关推荐
总的来说,C#监视文件系统是一个强大的特性,通过合理的编程和设计,可以实现高效且可靠的文件系统监控功能。对于开发者来说,理解和掌握`FileSystemWatcher`是提升工作效率、优化系统监控的关键技能之一。
标题中的“监视你的一动一动”暗示了这是一个与监控用户行为有关的程序,特别是通过键盘输入进行跟踪。描述进一步证实了这一点,指出它是一个键盘监控程序,这意味着它记录并可能分析用户在计算机上敲击的每一个键。...
总的来说,网页文件监视系统是IT行业中一个实用的工具,它结合了文件系统监控技术与网页开发的需求,提供了一种高效且精准的文件变动管理方案。无论是对于开发者调试网页,还是管理员监控服务器上的动态,都有着显著...
文件系统监视器是一种实用工具,专门设计用于跟踪和记录文件系统的任何变化或活动。它能够帮助用户深入了解系统中发生的文件操作,例如创建、修改、删除、读取和写入等事件,这对于系统管理员、开发者以及故障排查...
文件系统监视工具是一种重要的系统监控软件,主要用于跟踪和记录对文件系统的访问和修改行为。在IT领域,这类工具被广泛应用于系统安全分析、程序调试、数据保护和性能优化等多个场景。"文件系统监视工具v1"是这样一...
文件监视系统是一种重要的工具,它允许用户实时跟踪和记录指定目录下的文件系统活动。这种系统在许多场景下都非常有用,例如软件开发、数据分析、日志监控等,它可以帮助用户及时发现并响应文件的变化,提高工作效率...
在Linux操作系统中,/proc文件系统是一个非常重要的虚拟文件系统,它提供了查看和修改内核运行时状态的接口。这个特殊的文件系统并不占用磁盘空间,而是动态地反映了当前系统的进程、硬件信息以及各种系统参数。`/...
本文将深入探讨“WinForm监视文件系统源码”这一主题,旨在帮助开发者理解如何使用C#和WinForms来实现文件系统的实时监控功能。 首先,我们需要了解WinForms的基本结构。WinForms是通过控件(如按钮、文本框等)和...
在IT领域,尤其是在系统管理和安全监控方面,"Windows系统文件操作监视工具"是一个重要的概念。这类工具主要用于跟踪、记录和分析在Windows操作系统中对文件和文件夹进行的各种操作,包括创建、删除、修改等动作。这...
文件系统监视工具是一种至关重要的软件开发工具,它允许开发者跟踪并理解系统中文件操作的细节。sysinternals公司推出的这款工具,以其独特的动态加载驱动方式,为开发者提供了一个全面了解和控制文件系统活动的平台...
十分杰出的文件监控软件,能够监视你电脑中软件的文件系统访问情况,通俗讲就是软件打开关闭或创建删除了些什么文件,均逃不过它的眼睛,它是让流氓程序现身的利器!更好保护你的隐私!它不支持网络数据包监控,但在...
综上所述,使用`FileSystemWatcher`组件在C#中监视系统日志文件的变更是一项强大的功能,可以帮助开发者实现动态响应文件系统的变化,从而提高应用程序的智能化和实时性。在实际编程过程中,需要综合考虑性能、资源...
综上所述,文件或目录监控是IT领域中的一个重要技术,它允许程序对文件系统的变动做出即时响应,对于开发、运维和安全等多方面都有着实际的应用价值。通过了解并掌握这些知识点,我们可以构建更高效、更智能的系统...
`FileSystemWatcher`是.NET Framework提供的一个类,它允许应用程序监视文件系统的更改,并在发生特定类型的事件时接收通知。这些事件包括文件或目录的创建、删除、重命名以及内容的改变等。通过`FileSystemWatcher`...
在IT领域,"HOOK监视文件变化"是一种常见的技术,它涉及到操作系统级别的编程,尤其是Windows API中的文件系统监视。这项技术允许程序实时跟踪指定文件或目录的任何修改、创建或删除等事件,这对于软件开发、日志...
FindFirstChangeNotification函数用于设置一个文件或目录的监视,指定要监视的文件系统更改类型,例如FILE_NOTIFY_CHANGE_FILE_NAME、FILE_NOTIFY_CHANGE_DIR_NAME、FILE_NOTIFY_CHANGE_ATTRIBUTES等。一旦注册了...
标题中的“文件监视工具,可以实时监视各文件的状态”揭示了这种工具的核心功能,即实时跟踪并记录系统中文件的读写、创建、删除等操作,帮助用户了解程序运行过程中对文件系统的具体影响。 描述中提到“对于分析...
监视文件系统的小程序是一种用于实时监控文件或目录变化的实用工具。在IT行业中,这种程序对于开发者、系统管理员以及任何需要跟踪文件系统活动的人来说都极其重要。它可以帮助我们理解文件系统的动态行为,检测应用...
本程序与文件上传配合使用,主要功能是监视"路径一"所指的文件夹如发现用户有上传的文件,则将其转移到"路径二"文件夹下,并转换为swf格式。swf格式文件将被放在"路径三"文件夹下。(路径名不可有空格) 注意: 一、...
Filemon 是一款出色的文件系统监视软件,它可以监视应用程序进行的文件读写操作。它将所有与文件一切相关操作(如读取、修改、出错信息等)全部记录下来以供用户参考,并允许用户对记录的信息进行保存、过滤、查找等...