python误删文件怎么恢复_记录一次脚本误删文件后恢复

本文记录了一次因脚本错误导致文件被删除,然后如何通过日志恢复的过程。脚本原本用于定期移动超期文件到备份目录,但配置错误导致误删。通过收集脚本的输出信息,编写恢复脚本,使用`shutil.copy`从备份目录复制文件回原位置,实现了文件恢复。
摘要由CSDN通过智能技术生成

定期移动某目录下超过30天的文件,脚本内容如下

# -*-coding:utf-8-*-

import os

import sys

import time

import shutil

backupdir="/data/backup/images/%s"%(time.strftime("%Y-%m-%d",time.localtime()))

bday=2592000

path='/data/images/log'

if os.path.exists(backupdir) is False:

os.makedirs(backupdir)

cday=int(time.time())

for i in os.walk(path):

# 判断目录是否为空,且创建时间大于 bday

if i[1] == [] and i [2] == [] and (cday - int(os.stat(i[0]).st_mtime)) > bday:

print "删除空目录: %s"%(str(i[0]))

os.rmdir(i[0])

else:

for j in i[2]:

# 判断大于 bday 的文件

if (cday - int(os.stat(i[0]+'/'+j).st_mtime)) > bday:

print "移动文件: %s"%(str(i[0]+'/'+j))

shutil.move(str(i[0]+'/'+j),backupdir+'/'+j)

当脚本执行一半的时候发现目录配置错误,马上CTRL + C 结束脚本

删除脚本输出如下:

移动文件: /xx/xx/xx/xx/xx/xx/xx/xx/xxxxxx.zip

将删除脚本输出内容复制到/data/bin/de文件中

编写恢复脚本

# -*-coding:utf-8-*-

import shutil

with open('/data/bin/de', 'r') as f:

file = f.readlines()

for i in file:

FilePath = i.replace("\n", "").replace("\r","")

FileName = path.split('/')[-1]

print fil , path

try:

shutil.copy('/data/backup/images/xxxx/%s'%(FileName),FilePath)

except:

pass

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值