处理文件变更的方法及电子装置制造方法

文档序号:6500025阅读:130来源:国知局
处理文件变更的方法及电子装置制造方法
【专利摘要】一种处理文件变更的方法及电子装置。该处理文件变更的方法包括:取得指定文件夹的变更列表,该指定文件夹包括在一时间区段内发生文件变更的多个子文件,该变更列表指示该多个子文件对应的名称、全路径以及变更时间;判断系统时间减去该变更列表指示的最后变更时间是否大于时间阈值;以及当该系统时间减去该变更列表指示的该最后变更时间大于该时间阈值时,根据该变更列表,执行判断文件操作流程,并将执行的结果储存于文件操作列表。本发明可缓解判断文件操作流程的执行工作,避免占用客户端过多的系统资源,且只要客户端与服务端保持连接时,客户端可即时将其文件变更状态及操作同步更新于服务端的服务器,以简化服务端处理文件变更的复杂度。
【专利说明】处理文件变更的方法及电子装置
【技术领域】
[0001]本发明涉及一种处理文件变更的方法及电子装置,尤指一种可简化文件变更的合并处理,加速分析文件变更操作处理效率的取得文件变更以及判断文件操作的方法及相关电子装置。
【背景技术】
[0002]在线同步存储服务提供者(以下称服务端)提供使用者将文件同步储存到网络硬盘的服务,因此使用者(以下称客户端)可在任何时间地点,通过网络访问(存取)网络硬盘中的文件。
[0003]然而,服务端的文件管理员有时需要获取在某一时间区段(time segment)内,同步路径下文件(或文件夹)的最终状态,用来对客户端做行为分析或逻辑处理。在此情况下,文件管理员则需要对文件变更做合并处理,以分析客户端的文件变更操作(例如,重新命名、新增、删除以及更新等操作)。若是遇到连续发生多次或不规则的文件变更时,合并处理可能会变得很复杂、不可控,并且降低处理效率。
[0004]因此,为了简化文件变更的合并处理,加速分析文件变更操作的处理效率,实有必要设计一种取得文件变更以及判断文件操作的方法。
[0005]从而,需要提供一种处理文件变更的方法及电子装置来满足上述需求。

【发明内容】

[0006]因此,本发明的主要目的即在于提供一种取得文件变更以及判断文件操作的方法,用来简化文件变更的合并以及判断文件变更的操作,以确保较佳的处理效率。
[0007]本发明公开一种处理文件变更的方法,该处理文件变更的方法包含:取得一指定文件夹的一变更列表,该指定文件夹包含在一时间区段内发生文件变更的多个子文件,该变更列表指示该多个子文件对应的名称、全路径以及变更时间;判断一系统时间减去该变更列表指示的一最后变更时间是否大于一时间阈值;以及当该系统时间减去该变更列表指示的该最后变更时间大于该时间阈值时,根据该变更列表,执行一判断文件操作流程,并将执行的结果储存于一文件操作列表。
[0008]本发明还公开一种电子装置,该电子装置包含:一处理器;以及一储存单元,该储存单元耦接于该处理器,用来储存一程序代码,该程序代码指示该处理器执行一处理文件变更的方法,其中该方法包含:取得一指定文件夹的一变更列表,该指定文件夹包括在一时间区段内发生文件变更的多个子文件,该变更列表指示该多个子文件对应的名称、全路径以及变更时间;判断一系统时间减去该变更列表指示的一最后变更时间是否大于一时间阈值;以及当该系统时间减去该变更列表指示的该最后变更时间大于该时间阈值时,根据该变更列表,执行一判断文件操作流程,并将执行的结果储存于一文件操作列表。
[0009]本发明的时间阈值的限制条件可用来判断客户端对文件变更的操作是否已经告一段落,以缓解判断文件操作流程的执行工作,避免占用客户端过多的系统资源,并且只要客户端与服务端保持连接时,客户端可即时将其文件变更状态及操作同步更新于服务端的服务器,以简化服务端处理文件变更的复杂度。
【专利附图】

【附图说明】
[0010]图1为本发明实施例的一电子装置的示意图。
[0011]图2为本发明实施例的一取得文件变更流程的示意图。
[0012]图3A及图3B为本发明实施例用于图2中取得文件变更流程的一判断文件操作流程的示意图。
[0013]主要组件符号说明:
[0014]10电子装置
[0015]100处理器
[0016]110储存单元
[0017]120通信接口单元
[0018]114程序代码
[0019]20、30流程 [0020]200 ~204、300 ~310 步骤
【具体实施方式】
[0021]请参考图1,图1为本发明实施例的一电子装置10的示意图。电子装置10可以是个人计算机、智能型手机、平板计算机、个人数字助理或笔记本型计算机等,用来与服务端的服务器通过网络相连接,以供使用者进行在线同步储存服务。电子装置10包含有一处理器100、一储存单元110以及一通信接口单元120。处理器100耦接于储存单元110,处理器100可以是一微处理器或是特殊应用集成电路(Application-Specific IntegratedCircuit, ASIC)。储存单元110可以是任何数据储存装置,用来储存程序代码114,以供处理器100读取。举例来说,储存单元110可以是只读式存储器(read-only memory, ROM)、随机存取存储器(random-access memory, RAM)、光盘只读存储器(CD-ROMs)、磁带(magnetictapes)、硬盘(hard disks)或光学数据储存装置(optical data storage devices)等,而不限于此。通信接口单元120用来根据处理器100的处理结果,以通过电缆或无线传输的方式与相对应的电子装置或服务器交换包数据。
[0022]关于电子装置10的运作方式,请进一步参考图2,图2为本发明实施例的一处理文件变更流程20的示意图。处理文件变更流程20可用于电子装置10中,用来取得客户端的文件变更状态记录。处理文件变更流程20可编译成程序代码114且包含下列步骤:
[0023]步骤200:开始。
[0024]步骤201:取得一指定文件夹的一变更列表,指定文件夹包含有在一时间区段内发生文件变更的多个子文件,变更列表指示该多个子文件对应的名称、全路径以及变更时间。
[0025]步骤202:当一系统时间减去变更列表的一最后变更时间大于一时间阈值时,进行步骤203 ;当系统时间减去变更列表的最后变更时间小于时间阈值时,回到步骤201。
[0026]步骤203:根据变更列表,执行一判断文件操作流程,并将执行的结果储存于一文件操作列表。
[0027]步骤204:结束。
[0028]处理文件变更流程20中,变更列表由一文件夹监控程序所产生,其是客户端以及服务端以外的第三方同步软件,可安装在客户端中,用来即时监视并记录客户端的文件变更。举例来说,文件夹监控程序,如WiSync,其可随时记录客户端每一次对文件(或文件夹)的变更,即使客户端处于离线状态,WiSync可等到客户端再次连接至网络时,通过其特定通信协议,将文件的变更同步上传到服务端的服务器。
[0029]因此,为了简化处理文件变更的工作,根据处理文件变更流程20,本发明在客户端取得文件夹监控程序产生的变更列表,据以进行文件变更状态的合并处理,以判断客户端对文件的操作,并将之储存在文件操作列表中。因此,当客户端与服务端进行同步时,客户端可将文件操作列表同步上传至服务端的服务器,如此可简化在服务端的文件变更状态的处理程序,进而提升服务端的处理效率。
[0030]值得注意的是,时间阈值用来判断客户端对文件变更的操作是否已经告一段落。具体来说,若变更列表指示的最后一次变更时间在经过一段时间阈值之前,则可推测客户端对文件的变更仍未告一段落,可能会持续对文件进行变更。若变更列表指示的最后一次变更时间再经过一段时间阈值之后,变更列表仍未产生新的文件变更,则可推测客户端对文件的变更已经告一段落。换句话说,若客户端的一系统时间Tsys减去变更列表的一最后变更时间Tust小于一时间阈值Tth时,即Tsys-Tust〈Tth,则表示文件夹监控程序可能会持续产生文件变更,因此再次取得指定文件夹的一新变更列表,而不进行后续的判断文件操作流程。反之,若客户端的系统时间Tsys减去变更列表的最后变更时间Tlast大于时间阈值Tth时,即Tsys_Tust>Tth,则表示文件变更已经告一段落,因此可进行后续的判断文件操作流程。如此一来,时间阈值Tth的限制条件可缓解判断文件操作流程的执行工作,当有连续的文件变更产生时,判断文件操作流程处于休眠状态,以免占用客户端过多的系统资源。反之,当判断文件操作流程处于执行状态时,则暂停步骤201及202关于检测时间阈值Tth的动作。文件夹监控程序则永远持续产生指定文件夹的变更列表,当判断文件操作流程执行结束时,则继续步骤201及202关于检测时间阈值Tth的动作。
[0031]因此,处理文件变更流程20可视为一循环程序,用来重复地取得客户端的文件更新状态记录(即发生变更的文件名称、全路径以及变更时间),据以执行文件操作判断的处理,并将产生的操作判断结果储存于文件操作列表,以同步上传至服务端的服务器。如此一来,只要客户端与服务端连接时,处理文件变更流程20可即时将客户端的文件变更状态及操作同步更新于服务端。
[0032]关于判断文件操作流程的详细运作方式可进一步参考图3A及图3B,图3A及图3B为本发明实施例的一判断文件操作流程30的示意图。判断文件操作流程30可用来对文件的变更做逻辑分析,以判断客户端执行的文件操作为何,例如一重新命名操作、一新增操作、一删除操作以及一更新操作。判断文件操作流程30可一并编译入程序代码114中,其中图3A绘示了步骤300至步骤305,图3B绘示了步骤306至步骤310:
[0033]步骤300:开始。
[0034]步骤301:清除一文件操作列表。
[0035]步骤302:根据变更列表,取得多个子文件名称以及全路径,由每一子文件所属的最上层文件夹至全路径末端的子文件,依序判断文件夹或子文件的文件操作。
[0036]步骤303:取得指定文件夹的一历史快照(snapshot)以及一最新快照。
[0037]步骤304:比对历史快照以及最新快照,以依序判断多个子文件的重新命名操作、新增操作、删除操作以及更新操作。
[0038]步骤305:当历史快照以及最新快照分别指示一旧文件以及一新文件,两者具有相同的一文件路径、一文件大小以及一最后修改时间,但具有不同的文件名称时,则判断新文件的文件操作是重新命名操作,以及将新文件的重新命名操作储存于文件操作列表。
[0039]步骤306:当历史快照未指示对应于最新快照指示的新文件时,则判断新文件的文件操作是新增操作,以及将新文件的新增操作储存于文件操作列表。
[0040]步骤307:当最新快照未指示对应于历史快照指示的一旧文件时,则判断旧文件的文件操作是删除操作,以及将旧文件的删除操作储存于文件操作列表。
[0041]步骤308:当历史快照以及最新快照分别指示一旧文件以及一新文件,两者具有相同的一文件名称以及一文件路径,但具有不同的一文件大小以及一最后修改时间时,则判断新文件的文件操作是更新操作,将新文件的更新操作储存于文件操作列表。
[0042]步骤309:储存最新快照,作为一新历史快照。
[0043]步骤310:结束。
[0044]在步骤301中,由于判断文件操作流程30为循环程序(即处理文件变更流程20)的一部分,因此每当执行判断文件操作流程30时,则需先将上一次的执行结果清除,以免新旧执行结果同时储存在相同的存储器区块中,导致客户端重复上传旧的执行结果至服务端。
[0045]在步骤303及309中,指定文件夹的最新快照会被储存,并作为下一次执行文件判断操作的历史快照,换言之,本次执行文件判断操作的历史快照是上一次执行文件判断操作的最新快照。简单来说,步骤303比对客户端在某个时间区段内的新旧文件快照,用来作为分析文件操作的依据。而时间区段的长短则是两次执行文件判断操作流程30经过的时间,或是客户端持续进行文件变更的时间长度。
[0046]举例来说,假设时间阈值为I分钟,若客户端在系统时间1:00至1:10之间,持续对指定文件夹或其中的子文件进行变更,而处理文件变更流程20在系统时间1:10至1:11之间没有检测到新的文件变更,则取得系统时间1:11的最新文件快照,用来跟历史快照(假设是系统时间00:50)作比对,其中时间区段为21分钟,即00:50的历史快照与1:11的最新快照之间的一时间差。若下次执行文件判断操作的最新快照是系统时间1:18,则比对1:11的历史快照以及1:18的最新快照,其中时间区段为7分钟。如此一来,处理文件变更流程20及文件判断操作流程30可不定时地进行判断文件变更的操作,视客户端对文件变更是否告一段落,并将文件变更的操作同步上传至服务端。而每次执行文件变更操作的最新文件快照会被储存为历史快照,因此可避免文件信息的遗漏。
[0047]在步骤304中,判断文件操作的顺序,首先要从判断重新命名操作开始,其余判断新增操作、删除操作以及更新操作则无限定的顺序,设计者可视情况加以调整。由于重新命名操作的本质上是将原有文件或文件夹删除之后,再新增一文件或文件夹。为了避免删除操作以及新增操作混淆了判断重新命名操作,因此须优先处理重新命名操作。
[0048]请参考表格I至表格4,表格I至表格4分别为变更列表、历史快照、最新快照以及文件操作列表的范例值,用来说明判断文件操作流程30中步骤305~308的【具体实施方式】。
【权利要求】
1.一种处理文件变更的方法,该处理文件变更的方法包括: 取得一指定文件夹的一变更列表,该指定文件夹包括在一时间区段内发生文件变更的多个子文件,该变更列表指示该多个子文件对应的名称、全路径以及变更时间; 判断一系统时间减去该变更列表指示的一最后变更时间是否大于一时间阈值;以及当该系统时间减去该变更列表指示的该最后变更时间大于该时间阈值时,根据该变更列表,执行一判断文件操作流程,并将执行的结果储存于一文件操作列表。
2.如权利要求1所述的处理文件变更的方法,其中该判断文件操作流程包括: 根据该变更列表,取得该多个子文件对应的名称以及全路径; 取得该指定文件夹的一历史快照以及一最新快照; 根据对应于该多个子文件的文件全路径,比对该历史快照以及该最新快照,以依序判断该多个子文件的文件操作;以及 储存该多个子文件的文件操作于一文件操作列表。
3.如权利要求2所述的处理文件变更的方法,其中根据对应于该多个子文件的文件全路径,比对该历史快照以及该最新快照,以依序判断该多个子文件的文件操作的步骤包括: 依序判断该多个子文件的一重新命名操作、一新增操作、一删除操作以及一更新操作。
4.如权利要求3所述的处理文件变更的方法,其中当该历史快照以及该最新快照分别指示一旧文件以及一新文件,两者具有相同的一文件路径、一文件大小以及一最后修改时间,但具有不同的文件名称时,则判断新文件的文件操作是重新命名操作。
5.如权利要求3所述的处理文件变更的方法,其中当该历史快照未指示对应于该最新快照指示的一新文件时,则判断该新文件的文件操作是该新增操作。
6.如权利要求3所述的处理文件变更的方法,其中当该最新快照未指示对应于该历史快照指示的一旧文件时,则判断该旧文件的文件操作是该删除操作。
7.如权利要求3所述的处理文件变更的方法,其中当该历史快照以及该最新快照分别指示一旧文件以及一新文件,两者具有相同的一文件名称以及一文件路径,但具有不同的一文件大小以及一最后修改时间时,则判断该新文件的文件操作是该更新操作。
8.如权利要求2所述的处理文件变更的方法,其中根据对应于多个子文件的文件全路径,比对该历史快照以及该最新快照,以依序判断该多个子文件的文件操作的步骤包括: 根据对应于该多个子文件的全路径,由每一子文件所属的最上层文件夹至全路径末端的子文件,依序判断一子文件的文件操作。
9.如权利要求2所述的处理文件变更的方法,其中该判断文件操作流程还包括: 清除该文件操作列表。
10.如权利要求2所述的处理文件变更的方法,其中该判断文件操作流程还包括: 储存该最新快照,作为一新历史快照。
11.一种电子装置,该电子装置包括: 一处理器;以及 一储存单元,该储存单元耦接于该处理器,用来储存一程序代码,该程序代码指示该处理器执行一处理文件变更的方法,其中该方法包括: 取得一指定文件夹的一变更列表,该指定文件夹包括在一时间区段内发生文件变更的多个子文件,该变更列表指示该多个子文件对应的名称、全路径以及变更时间; 判断一系统时间减去该变更列表指示的一最后变更时间是否大于一时间阈值;以及 当该系统时间减去该变更列表指示的该最后变更时间大于该时间阈值时,根据该变更列表,执行一判断文件操作流程,并将执行的结果储存于一文件操作列表。
12.如权利要求11所述的电子装置,其中该判断文件操作流程包括: 根据该变更列表,取得该多个子文件名称以及全路径; 取得该指定文件夹的一历史快照以及一最新快照; 根据对应于多个子文件的文件全路径,比对该历史快照以及该最新快照,以依序判断该多个子文件的文件操作;以及 储存该多个子文件的文件操作于一文件操作列表。
13.如权利要求12所述的电子装置,其中根据对应于多个子文件的文件全路径,比对该历史快照以及该最新快照,以依序判断该多个子文件的文件操作的步骤包括: 依序判断该多个子文件的一重新命名操作、一新增操作、一删除操作以及更新操作。
14.如权利要求13所 述的电子装置,其中当该历史快照以及该最新快照分别指示一旧文件以及一新文件,两者具有相同的一文件路径、一文件大小以及一最后修改时间,但具有不同的文件名称时,则判断新文件的文件操作是重新命名操作。
15.如权利要求13所述的电子装置,其中当该历史快照未指示对应于该最新快照指示的一新文件时,则判断该新文件的文件操作是该新增操作。
16.如权利要求13所述的电子装置,其中当该最新快照未指示对应于该历史快照指示的一旧文件时,则判断该旧文件的文件操作是该删除操作。
17.如权利要求13所述的电子装置,其中当该历史快照以及该最新快照分别指示一旧文件以及一新文件,两者具有相同的一文件名称以及一文件路径,但具有不同的一文件大小以及一最后修改时间时,则判断该新文件的文件操作是该更新操作。
18.如权利要求12所述的电子装置,其中根据对应于多个子文件的文件全路径,比对该历史快照以及该最新快照,以依序判断该多个子文件的文件操作的步骤包括: 根据对应于该多个子文件的全路径,由每一子文件所属的最上层文件夹至全路径末端的子文件,依序判断一子文件的文件操作。
19.如权利要求12所述的电子装置,其中该判断文件操作流程还包括: 清除该文件操作列表。
20.如权利要求12所述的电子装置,其中该判断文件操作流程还包括: 储存该最新快照,作为一新历史快照。
【文档编号】G06F17/30GK104008104SQ201310057195
【公开日】2014年8月27日 申请日期:2013年2月22日 优先权日:2013年2月22日
【发明者】汪福明, 陈革安 申请人:纬创资通股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1