导航:首页 > 版本升级 > c监视文件变化

c监视文件变化

发布时间:2021-12-04 11:09:59

linux下怎样用c语言做实时监控目录中文件数量变化的程序

有一个头文件叫inotify.h ,这是linux 内核中的一个特性,可以用来监控目录

❷ 怎样在delphi中监视文本文件的变化

delphi 的samples 不是 用 TShellChangeNotifier
控件 吗
object ShellChangeNotifier1: TShellChangeNotifier
NotifyFilters = [nfFileNameChange, nfDirNameChange, nfAttributeChange, nfSizeChange, nfWriteChange, nfSecurityChange]
Root = 'C:\'
WatchSubTree = True
Left = 224
Top = 216
end

❸ C#用filesystemwatcher监控文件夹变化时,怎样监控到被监控的文件夹本身变化

一般的做法就是监视上一层目录。Path设置成上一级目录,Filter设置成版文件夹名称。权

http://social.msdn.microsoft.com/Forums/vstudio/en-US/a17f54f2-65eb-4add-afa9-aacf95ca80e5/filesystemwatcher-how-to-get-an-event-trigger-for-watcher-folder

❹ c#做文件监视,当某文件正在被修改时触发,能做吗

监视只能监视文件状抄态的改变,使用System.IO.FileSystemWatcher可以监听一个文件的变更,但是你所述的要监视“正在修改”是不可能的,“修改”是在内存内的操作,这种修改会有很多种可能

所以是不存在能监听其他进程“正在修改”某个文件的事件的,当然,如果你有必要可以查看打开了这个文件句柄的所有进程,这个需要你直接使用win api了。

❺ 13、linux上怎么动态监控一个文件的内容变化

用途说明
tail命令可以输出文件的尾部内容,默认情况下它显示文件的最后十行。它常用来动态监视文件的尾部内容的增长情况,比如用来监视日志文件的变化。与tail命令对应的是head命令,用来显示文件头部内容。

常用参数
格式:tail file
输出指定文件file的尾部内容,默认输出最后十行内容(outputthe last part of files。Print the last 10 lines of each FILE tostandard output. )

格式:tail file1 file2...
指定多个文件时,会显示每个文件的文件名称,再显示该文件的尾部内容(Withmore than one FILE, precede each with a header giving the file name.)

格式:tail
格式:tail -
不指定文件时,表明从标准输入读取内容,这通常用在管道线后面,把前一个命令的输出作为tail的输入内容(Withno FILE, or when FILE is -, read standard input.)

格式:tail -n file
格式:tail -n n file
格式:tail --lines=n
显示文件最后n 行,比如tail -20 file就是显示文件最后10行,这个参数可以配合其他参数与使用。注意上面三种格式的斜体n 是实际要显示的行数的数值。

注意:tail-n可以显示最后n行的文本内容。那么有没有一种方式显示从n行开始的文本内容,答案是肯定的。
tail -n +4file表示显示文件file从第4行开始的内容。从1开始计数。

格式:tail -f file
动态跟踪文件file的增长情况(outputappended data as the filegrows),tail会每隔一秒去检查一下文件是否增加新的内容,如果增加就追加在原来的输出后面显示。但这种情况,必须保证在执行tail命令时,文件已经存在。
如果想终止tail-f的输出,按Ctrl+C中断tail程序即可。如果按Ctrl+C不能中断输出,那么可以在别的终端上执行killall tail强行终止。

注意:采用tail-f来监控文件变化情况时,在某些情况会不太灵。比如在java应用程序中采用log4j日志时,每隔1个小时生成一个新的日志文件,当前的日志输出在 LOG4J.LOG中,当一个小时过去后,log4j会将LOG4J.LOG改名成LOG4J.yyyy-mm-dd-HH的形式。那么这个时候tail -f就不能动态输出新的日志内容了。tail命令本身提供了很多参数,似乎都不能完美的解决这个问题。最后只好编写了一个脚本ftail.sh来跟踪日 志,详见《Linux下实时跟踪log4j日志文件的bash脚本 - 增强了tail -f的功能 》。刚才我仔细查看了tail的手册页,发现tail -F就能够做到跟踪这种类型的日志。转念一想,这种需求应该早就被Linux世界的人给满足了的。

格式:tail -F file
格式:tail--follow=name --retry file
功能与tail -ffile相同,也是动态跟踪文件的变化,不同的是执行此命令时文件可以不存在。

以上处理都是针对文本文件的,下面是针对二进制文件的情形。

格式:tail -c n file
取文件file的最后n个字节。

格式:tail -c +n file
取文件file的第n个字节后的内容。从1开始计数。
使用示例
示例一 输出文件尾部
先使用seq命令输出20个数字保存到1.txt,然后尝试使用tail命令。
[root@new55 ~]# seq 20 >1.txt
[root@new55 ~]# cat 1.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
[root@new55 ~]# tail 1.txt
11
12
13
14
15
16
17
18
19
20
[root@new55 ~]# tail -3 1.txt
18
19
20
[root@new55 ~]# tail -n 3 1.txt
18
19
20
[root@new55 ~]# tail --lines=3 1.txt
18
19
20
[root@new55 ~]# tail -n +14 1.txt
14
15
16
17
18
19
20
[root@new55 ~]#

示例二 动态跟踪tomcat输出
动态跟踪tomcat输出。
[root@web logs]# tail -f catalina.out
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:852)
atorg.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Thread.java:619)
2010-12-0313:23:02,236 [http-80-15] DEBUG mhr.roi.MhrManager -MhrGetJobReq={seq=991,job_id='86130469-0006'}
2010-12-0313:23:02,301 [http-80-15] DEBUG mhr.roi.MhrManager -MhrGetJobRsp={seq=991,result=0(成功),,info={job_id='86130469-0006',employer_id=86130469,employer_name=无锡富士时装有限公司,,,job_title='|570309|',job_title0='文员',job_type=f(全 职),issue_time='2010-11-0300:00:00.0',work_address='1902',work_address0=无锡 市,desired_count='1',,,,,,job_desc=大专,1年以上5s管理工作经验,电脑操作熟练。,required_experience=1(一年以上),,,,required_degree=15(大专),,,,,,,valid_days=30,access_count=12,expire_time='2010-12-0300:00:00.0',job_status=1(过期),,,,,,contact_name=王小 姐,contact_number=0510-85550088,remarks='★此职位是从后台导入的
',enter_time='2010-11-0309:45:11.0',change_time=2010-12-0302:18:05.0,,job_seq=123201,,required_min_age=22,,,accommodations=面议,serve_principal=wjw12580,job_summary=大专,1年以上5s管理工作经验,电脑操作熟练,,}}
2010-12-0313:23:02,302 [http-80-15] DEBUG mhr.roi.MhrManager -MhrGetEmployerReq={seq=0,employer_id='86130469'}
2010-12-0313:23:02,304 [http-80-15] DEBUG mhr.roi.MhrManager -MhrGetEmployerRsp={seq=0,result=0(成功),,info= {employer_id='86130469',employer_name=无锡富士时装有限公司,employer_region=1902,employer_address=无锡市滨湖镇山水城科技园8号,,employer_desc=无锡 富士时装(集团)有限公司成立于1992年,是中日韩合资企业。主要生产高档针织时装,产品全部外销,连续多年荣获“中国行业500强”、“全国工业重点 行业效益十佳企业”、“无锡市百佳企业”等称号。公司总部位于江苏省无锡市滨湖镇山水城科技园,全新的厂房设施,占地面积30亩。公司分别在苏州、泰兴、 盐城、徐州设有分厂,集团公司现有职工1500多人,年销售额近3亿元。,,,,,,open_mode=5(系统自动操 作),open_time='2010-11-0309:45:10.0',,,,,contact_name=王小 姐,contact_number=0510-85550088,,,,,employer_status=1(已经开通),,,login_password=871386,,agency=false,balance=100.0000,,,,,serve_principal=wjw12580,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,remarks='此帐号由“12580zgz-盐城维克多网络传媒有限公司”导入',enter_time='2010-11-03 09:45:10.0',}}
Ctrl+C
[root@web logs]#

示例三 动态跟踪log4j日志
经过我的试验,发现tail -F功能的强大,它等同于--follow=name--retry。如果你跟踪的文件被移动或者改名后, 你还想继续tail它, 你可以使用这个选项。
tail手册页中关于--retry的说明:keep trying to open a file even if itis inaccessible when tail starts or if it becomes inaccessible later; useful when following by name, i.e., with --follow=name。 tail命令开始执行时文件不存在或者执行过程中文件不能访问,会不断重试。
关于--follow的说明:-f, --follow[={name|descriptor}]output appended data as the file grows; -f, --follow, and --follow=descriptorare equivalent 。--follow=descriptor表明跟踪的是文件描述符, --follow=name表明跟踪的是文件名称。 如果文件名称改掉之后,还想继续跟踪原文件名称对应的尾部内容,就得使用-F选项而不是-f选项了。
[root@webimx_server]# tail -F log/IMX.LOG
14:13:28.892 INFO ImxConnection[6] imx.server.ImxConnection - RXIMX_ACTIVE_TEST{seq=3460,client_id=1291343201649042,presence_status=1(presence_status_online),}
14:13:28.892 DEBUGImxConnection[6] org.logicalcobwebs.proxool.ImxDB - 006417 (01/02/00) -Connection #9 served
14:13:28.892 INFO ImxConnection[6] imx.dbo.ImxOnlineInfoRow - EXEC SQL UPDATEimx_online_info SET last_active_time = '2010-12-03 14:13:28.0' WHERE account ='zhy'
14:13:28.894 DEBUGImxConnection[6] org.logicalcobwebs.proxool.ImxDB - UPDATE imx_online_info SETlast_active_time = '2010-12-03 14:13:28.0' WHERE account = 'zhy'; (1milliseconds)
14:13:28.894 DEBUGImxConnection[6] org.logicalcobwebs.proxool.ImxDB - 006417 (00/02/00) -Connection #9 returned (now AVAILABLE)
14:13:29.625 INFO ImxConnection[6] imx.server.ImxConnection - RXIMX_ACTIVE_TEST{seq=3461,client_id=1291343201649042,presence_status=1(presence_status_online),}
14:13:29.626 DEBUGImxConnection[6] org.logicalcobwebs.proxool.ImxDB - 006418 (01/02/00) -Connection #8 served
14:13:29.626 INFO ImxConnection[6] imx.dbo.ImxOnlineInfoRow - EXEC SQL UPDATEimx_online_info SET last_active_time = '2010-12-03 14:13:29.0' WHERE account ='zhy'
14:13:29.627 DEBUGImxConnection[6] org.logicalcobwebs.proxool.ImxDB - UPDATE imx_online_info SETlast_active_time = '2010-12-03 14:13:29.0' WHERE account = 'zhy'; (0milliseconds)
14:13:29.653 DEBUGImxConnection[6] org.logicalcobwebs.proxool.ImxDB - 006418 (00/02/00) -Connection #8 returned (now AVAILABLE)
Ctrl+C
[root@webimx_server]#

❻ 如何用C语言监视一文件,(可以隔一定时间检测该文件),当文件相比较上一时间有改动时,读出改动处

一个伪代码,给你一个思路
FILE *fp;
long len=0,lastlen=0;
while(1){
隔一定时间
fp=fopen("a.txt","r");
len=ftell(fp);//可以返回文件长度
if(len>lastlen){
fseek(SEEK_SET,lastlen);//定位到上一次改动前的地方回
char buf[len-lastlen];
fread(buf,1,len-lastlen,fp);//把改动处读到答内存中
lastlen=len;
}//if
fclose(fp);
}//while

用select写什么?

❼ c语言监控文件是否被更改并检测出修改人的IP及其修改内容

改ip是解觉不了,因为监控软件设置了IP比如从192.168.0.1到255,你再改也没用,要解决就下载反网管软件

❽ C或者C++怎么监控一个,文件改变了

https://msdn.microsoft.com/en-us/library/chzww271.aspx
http://www.ibm.com/developerworks/linux/library/l-ubuntu-inotify/index.html

❾ 在win7下怎么监视文件夹变动,并后台自动同步

1、下载:Directory Monitor中文版;
2、进行安装,步骤很简单,下一步一下步即可。
2、打开软件,然后点击”目录“再选择”新增“;
3、在新增目录中,添一个你要监视的文件夹,如C:\xitonghe.com\ 并勾选你要监视的事件,确定保存;
4、设置好之后,右下角会弹出气泡,C:\xitonghe.com 正在被监视
5、接下来我们对C:\xitonghe.com文件夹进行模拟操作试试看,小编新建了一个文档,随之右下角弹出气泡提示,而软件主界面也会有“新增”记录;
6、接下来怎么使用,大家应该有有数了吧,记住设置该软件开机启动哦,否则不会自动监视!

❿ 求一款可监视硬盘文件变化的软件

没有这样的软件的

阅读全文

与c监视文件变化相关的资料

热点内容
原力大数据招聘 浏览:479
数据线圆头什么意思 浏览:768
协和app怎么取号 浏览:664
c坐标转换代码 浏览:707
唐筛数据为什么能看出男女 浏览:44
快手java 浏览:835
qq分享的文件在哪里 浏览:226
爱念电影 浏览:656
97不用下载播放器的 浏览:649
在线观看0855影视 浏览:489
女主叫向晚棠的小说 浏览:841
uglifyjs使用 浏览:328
西班牙最大寸度电影 浏览:641
孤寂之狼txt无删笔趣阁 浏览:895
微程序微指令微操作机器指令 浏览:370
百合小说下载 浏览:477
iphone7怎么新建文件夹 浏览:339
如何用复印机打印u盘文件 浏览:377
哪里可以下载deb文件 浏览:958
怎么看建行app号码 浏览:62

友情链接