文件同步不那么简单

何涛2016-01-21 10:36应用 标签:同步 文件

要将大象装冰箱分三步:打开冰箱,放入大象,关上冰箱。这是一个小品笑话,但也反映了人的基本简单化思维。而要将两批文件进行同步,也许有人会说和大象装冰箱一样简单。其实细究起来,文件同步不是想像中那么简单。根据需求和环境的不同,文件同步有不同的讲究。

1. 本地两批文件的同步

如果要将本地的两个文件夹进行内容同步,可采用两种基本方法。一是用好Windows的自动覆盖功能,二是借助同步软件来完成。

假设有两个文件夹TEST1和TEST2,里边数量和内容不同的文件,我们目的是要求两个文件夹中都有一样的文件,且保证文件的版本处于最新。以Windows 10系统为例,如果使用系统自带的功能,可执行如下操作。

复制TEST1下的所有文件,然后切换到TEST2文件夹下,执行粘贴。这时,如果TEST1中有的文件TEST2中没有,则会不提示自动拷贝到TEST2;如果TEST1中有的文件TEST2中也有,文件名相同但内容不同,则会弹出如图所示的操作提示(图1)。这时,可以通过窗口中列出的两个同名文件的修改日期来判断文件的版本新旧。如果TEST2中的文件更新,则选择“不要复制”;如果TEST1中的文件更新,则可选择“复制和替换”。之后,可用同样的方法从TEST2中复制文件,对TEST1文件夹进行反方向操作。这样就能保证两个文件夹中的文件相统一。

1602A-WJTB-1

小提示:

还有一种特殊情况,就是自己也不确定这两个日期不同的文件是否都有保留的必要。这时为保险起见,可保留两个版本的文件,选择“复制,但保留这两个文件”。这样,会自动将同名文件中的后一个命名为加序号(2)后缀的文件。

以上用手动同步两个文件夹,操作比较繁琐且容易出错,弄不好就会将有用的文件或内容覆盖掉。为避免这种情况的发生,可借助于同步软件Beyond Compare来完成两个文件夹的同步。启动软件后显示会话选择窗口,在其中选择“同步文件夹”一项(图2)。然后进入文件夹同步窗口,在左右两侧分别加载要同步的文件夹,下方窗格会立即自动显示两个文件夹中文件的不同之处,单击窗口中部的“立即同步”按钮,即可快速实现两个文件夹的内容同步(图3)

1602A-WJTB-2

1602A-WJTB-3

2. 网上两批文件的同步

如今的文件不单单是保存在本地磁盘。许多人会将文件保存到网络空间中,而且为了安全起见,还会在不同的存储空间中保存2个甚至更多备份。这样,就需要保证网上两批文件也能保持内容相同。存放在网络云空间中的资源同步分为同类云盘的资源同步和不同类云盘的资源同步。

对于同类的云盘的两个不同账号,如果要保持其内容同步,可先将一个云盘中的文件夹生成加密共享链接(图4),然后在另一个云盘中访问这个资源链接,将链接所指向的文件夹保存到同名的网络文件夹中。如此一来,若存在同名的文件,云盘会自动生成一个带序号的备份文件或给出处理提示。之后进入云盘,按照日期对重名文件进行取舍即可。

1602A-WJTB-4

对于不同种的云盘资源,可借助于共享云盘本地同步文件夹的方法,实现两种云盘资源的互通。共享本地文件夹之后,遇到版本相冲突的文件,云盘会在自己的文件夹下建立副本。待同步完成之后,可分别进入不同的云盘,处理掉冗余的过期文件即可。

3. 本地与网络文件同步

本地资源与网络空间中文件的同步,可借助于云盘的文件夹同步功能来完成。以360云盘为例,在“功能大全”窗口下选择“同步文件夹”,然后指定要同步的本地文件夹和云盘中的同步文件夹,两端的文件夹下的文件就会自动保持同步(图5)。

1602A-WJTB-5

4. 跨越不同设备的同步

在目前多平台共存,移动为王的时代,跨越不同设备、不同种类系统之间的文件同步具有普遍意义。在不同设备之间,除了利用蓝牙、远程控制资源同步外,还可用一些专门的软件如“虚拟数据线”、“文件大师”等软件来实现文件的共享和同步。

以“虚拟数据线”为例,在Android设备上安装此软件,启动该软件后,软件会给出一个含有地址和端口号的FTP服务地址,另有一个含有http网址和验证码的服务地址;在PC资源管理器内输入FTP地址,或在PC网络浏览器内输入http地址,即可在Windows窗口中出现一个Android设备的资源窗口。这时,就可以在PC文件窗口和Android文件窗口之间进行文件交换操作,从而实现跨越设备和平台的文件同步(图6)。

1602A-WJTB-6

如果在苹果iOS设备与其他设备之间同步文件,可安装“文件大师”APP。“文件大师”APP有Android和iOS不同类别的版本,在相应的设备上安装此软件对应版本的APP,也会出现于类似上述虚拟数据线的浏览器或FTP文件共享类的文件管理窗口,在其中就可以进行跨平台的数据交换和文件同步了(图7)。

1602A-WJTB-7