linux vim 删除所有文件夹,删除当前目录下所有VIM临时文件的正确命令是什么?...

我有个专门的脚本来处理 Vim 的备份文件。依赖 Python 3 和 mlocate。会删除两种情况下的备份文件:原文件已经很久没修改过了;原文件已经不存在了。

不建议禁用备份功能,虽然现在有持久性撒消,但是数据多个备份总是会更安全。

还是把代码在这里贴一份:

#!/usr/bin/env python3

# fileencoding=utf-8

'''从列表中读取备份文件(*~)列表,并检测原文件是否存在;若不存在则删之'''

import sys, os

import subprocess

import datetime

if len(sys.argv) == 1:

db = None

elif len(sys.argv) == 2:

db = sys.argv[1]

else:

sys.exit('argument error')

if db:

f = subprocess.getoutput("locate -d '%s' -e -b '*~' 2> /dev/null" % db).split('\n')

else:

f = subprocess.getoutput("locate -e -b '*~' 2> /dev/null").split('\n')

def filter(i):

if not os.path.isfile(i[:-1]):

return True

try:

atime = datetime.datetime.fromtimestamp(os.stat(i).st_atime)

except FileNotFoundError:

return False

now = datetime.datetime.today()

interval = datetime.timedelta(days=30)

if now - atime > interval:

return True

return False

for i in f:

if i.endswith('~') and os.access(os.path.split(i)[0], os.W_OK):

if filter(i):

try:

print("删除", i)

try:

os.unlink(i)

except FileNotFoundError:

print(i, '在被删除前消失了:-(')

# print(i)

except:

print(i+': error'+repr(sys.exc_info()), file=sys.stderr)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值