某天,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`是.NET Framework提供的一个类,它允许应用程序监视文件系统的更改,并在发生特定类型的事件时接收通知。这些事件包括文件或目录的创建、删除、重命名以及内容的改变等。通过`FileSystemWatcher`...
综上所述,使用`FileSystemWatcher`组件在C#中监视系统日志文件的变更是一项强大的功能,可以帮助开发者实现动态响应文件系统的变化,从而提高应用程序的智能化和实时性。在实际编程过程中,需要综合考虑性能、资源...
综上所述,文件或目录监控是IT领域中的一个重要技术,它允许程序对文件系统的变动做出即时响应,对于开发、运维和安全等多方面都有着实际的应用价值。通过了解并掌握这些知识点,我们可以构建更高效、更智能的系统...
在IT领域,"HOOK监视文件变化"是一种常见的技术,它涉及到操作系统级别的编程,尤其是Windows API中的文件系统监视。这项技术允许程序实时跟踪指定文件或目录的任何修改、创建或删除等事件,这对于软件开发、日志...
FindFirstChangeNotification函数用于设置一个文件或目录的监视,指定要监视的文件系统更改类型,例如FILE_NOTIFY_CHANGE_FILE_NAME、FILE_NOTIFY_CHANGE_DIR_NAME、FILE_NOTIFY_CHANGE_ATTRIBUTES等。一旦注册了...
标题中的“文件监视工具,可以实时监视各文件的状态”揭示了这种工具的核心功能,即实时跟踪并记录系统中文件的读写、创建、删除等操作,帮助用户了解程序运行过程中对文件系统的具体影响。 描述中提到“对于分析...
本程序与文件上传配合使用,主要功能是监视"路径一"所指的文件夹如发现用户有上传的文件,则将其转移到"路径二"文件夹下,并转换为swf格式。swf格式文件将被放在"路径三"文件夹下。(路径名不可有空格) 注意: 一、...
Filemon 是一款出色的文件系统监视软件,它可以监视应用程序进行的文件读写操作。它将所有与文件一切相关操作(如读取、修改、出错信息等)全部记录下来以供用户参考,并允许用户对记录的信息进行保存、过滤、查找等...
文件监视是系统的核心功能,通过C#编程语言实现,利用.NET Framework 2.0提供的API和库,对服务器的文件系统进行深度监控。.NET Framework 2.0是一个强大的开发平台,提供了丰富的类库和工具,支持创建多种类型的...