我做了这样一个实验,复制文件的过程中,如果文件本身正在发生着变化,那最后复制结束后的文件应该是处在什么过程中呢?
是复制开始时的状态,还是复制结束时的状态,还是中间文件的某个状态。
使用脚本file.sh来不断地想file.dmp文件中插入行,文件会一直变大。
file.sh:
点击(此处)折叠或打开
让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:国际域名空间、网站空间、营销软件、网站建设、衡水网站维护、网站推广。
-
#!/bin/bash
-
i=1
-
while true
-
do
-
i=$[i+1]
-
echo $i >> file.dmp
-
done
中断脚本。
此时file.dmp的最后一行数字是 152940.
我们使用$ cp file.dmp file.dmp.bak 进行复制,然后立即运行file.sh脚本插入行。
等cp命令结束后(文件要够大,否则时间很快,不能出效果),查看file.dmp.bak文件的最后一行,发现是152940.
总结结论是复制生成的文件会和开始复制时的状态一致,及时在复制的过程中源文件也在不断的变化。
另外验证使用rsync效果一样。
欢迎大家佐证。
网站标题:文件复制过程中文件发生了变化会怎样?
网页路径:
http://cdweb.net/article/gesddg.html