【python】无聊之作:删除指定目录下的SVN文件

Python读取svn版本 本文将详细介绍如何使用Python读取svn版本。 阅读详情

一、受SVN控制的目录结构示例:

SVNCleaner:

|- .svn

|- (源码文件)

|- src

|—-|- .svn

|—-|- (源码文件)

需要删除的是所有.svn目录及里面所有文件;

 

二、可能会碰到的问题

1、 目录权限问题:

在windows系统删除(win7)会碰到如下错误:

 WindowsError: [Error 5] Access is denied

              解决方案:

用 os.chmod(path, mode) 方法先进行权限提升

例:

#!/usr/bin/python
import os, sys, stat

# Assuming /tmp/foo.txt exists, Set a file execute by the group.

os.chmod("/tmp/foo.txt", stat.S_IXGRP)

# Set a file write by others.
os.chmod("/tmp/foo.txt", stat.S_IWOTH)

print "Changed mode successfully!!
 

详见:http://www.tutorialspoint.com/python/os_chmod.htm

三、CODE:(完整源码)

# !/usr/bin/python
#coding=utf-8

#author onebody
# http://fcjblog.com http://blog.youkuaiyun.com/fcjblog
#http://hi.baidu.com/onebody83 http://weibo.com/hdxj http://t.qq.com/onebody
# QQ:4308451
import os
import stat
class SVNCleaner():# 主程序 删除指定目录下的 .svn 文件夹
rootdir = r"E:\grouwinshop_cms" # 需要处理的文件夹
rootdir = unicode(rootdir, "utf8")

def run(self):
self.delSvnDir(self.rootdir)
def delSvnDir(self, svnDir):
for parent, dirnames, filenames in os.walk(svnDir):
#目录处理 递归处理
for dirname in dirnames:
if dirname.find(".svn") >= 0:
self.delFileFolder(os.path.join(svnDir, dirname))
else:
self.delSvnDir(os.path.join(svnDir, dirname))

##删除些文件夹下所有文件和目录
def delFileFolder(self, srcDir):
if os.path.isfile(srcDir):
try:
#更改权限(win7会出现权限问题)
os.chmod(srcDir, stat.S_IREAD | stat.S_IWRITE)
os.remove(srcDir)
except:
pass
elif os.path.isdir(srcDir):
for item in os.listdir(srcDir):
itemsrc = os.path.join(srcDir, item)
self.delFileFolder(itemsrc)
try:
#更改权限(win7会出现权限问题)
os.chmod(srcDir, stat.S_IREAD | stat.S_IWRITE)
os.rmdir(srcDir)
except:
pass

#主程序执行#
svnCleaner = SVNCleaner()
svnCleaner.run()

链接:http://fcjblog.com/pytho-boredom-for-remove-svn-files-in-the-specified-directory

python3下操作SVN Python3下操作SVN 文章目录Python3下操作SVN一、背景二、python3环境准备三、在svn仓库上创建子目录四、将文件提交到svn仓库五、checkout目录六、更新svn仓库的文件 一、背景 在一次需求开发中,需要在python3的环境下,操作SVN,在SVN仓库上实现如下操作:创建SVN目录、拉取SVN文件内容、将文件推送到SVN仓库。 经过不断的探索尝试,最终实现了这些功能,这里将这些功能实现记录下来。 二、python3环境准备 关于python3在linux环境下的安装,可以参考: 阅读详情

相关推荐

Python写自动化之SVN更新

在远程机器上执行脚本时,为了能够保证脚本的实时性,我们一般会将脚本存放到SVN上,远程机器通过SVN的操作去更新脚本; SVN更新脚本只需要2步就可以实现了,这个地方使用到pysvn库,看下实现 # 初始化client self.client = pysvn.Client() self.client.set_default_username(self.username) self.client

4iO3&DagWatu 1万+

python flask 下载上传svn文件

然后,您可以使用任何 HTTP 客户端工具(例如 Postman 或 cURL)向服务发送 POST 请求,以下载或上传文件。路由也接受 POST 请求,并从请求参数中获取 SVN 仓库的 URL、用户名、密码、本地上传路径和 SVN 上传路径。路由接受 POST 请求,并从请求参数中获取 SVN 仓库的 URL、用户名、密码和本地下载路径。最后,返回一个 JSON 格式的响应。最后,返回一个 JSON 格式的响应。函数连接到 SVN 仓库,并调用。函数连接到 SVN 仓库,并调用。,然后在命令行中运行。

sinat_18697811的博客 609

python之pysvn的那些坑

使用详见官方文档,后面记录几个用到的方法 先安装 windows 安装 环境:win10,python3.7 http://pysvn.tigris.org/servlets/ProjectDocumentList?folderID=1768 下载对应版本,直接运行安装 centos 安装 环境:centos7,python3.7,pysvn1.8.0 centos下yum安装默认安装python...

crystal_shrimps的博客 6978

Python从svn下载文件脚本(实际测试有效)

需要先安装svn客户端

望那伊人的博客 7416

python 实现svn文件下载

python 实现svn的代码下载,解决了请求认证,字符编码,地址长度问题。非常不错的例子。

SVN清除.svn的python代码

此段代码作用是删除svn工具下的.svn文件夹

使用Python导出svn中的项目

import time, os, sys import jenkins.autoJenk as auto class CheckSvn(): def getSvnUrl(self): # 需要剪切的项目svn地址,这里包含了需要剪切的多个svn地址,如下图 svn_host = 'C:\\onw-project\\branch_svn_url.tx...

随风 1496

RK3588内核崩溃日志捕获:pstore与ramoops的实战配置指南

本文详细介绍了在RK3588嵌入式设备上配置pstore与ramoops以捕获内核崩溃日志的实战指南。通过内核配置调整、设备树设置及高级调试技巧,帮助开发者有效定位系统崩溃原因,特别适合户外智能设备等无法长期连接调试器的场景。文章还提供了生产环境优化建议,确保日志捕获的可靠性与安全性。

weixin_29189363的博客 407

WS2812B可寻址LED在客制化键盘光效中的应用与实现

可编程LED技术是嵌入式系统和物联网设备中实现动态灯光效果的核心组件,其原理在于通过单线通信协议,精准控制每个LED灯珠的颜色与亮度。这项技术的价值在于极大地简化了多节点灯光系统的硬件布线,并提供了灵活的软件编程接口,使其在智能照明、装饰氛围和交互反馈等场景中广泛应用。WS2812B作为可寻址LED的典型代表,凭借其串联控制、节省IO资源和丰富的社区库支持,成为DIY项目的热门选择。本文聚焦于将WS2812B集成到客制化键盘中,详细解析了从主控芯片选型、电路供电设计到动态光效算法(如彩虹渐变、涟漪效果)的实

weixin_33755557的博客 394

贝塞尔曲线在机器人路径平滑中的实战应用与优化

本文深入探讨了贝塞尔曲线算法在机器人路径平滑中的核心应用。通过对比G1CBS与G2CBS两种方法,详细阐述了如何实现从切线连续到曲率连续的平滑优化,以满足不同机器人对运动平稳性和效率的需求,并提供了完整的Python代码实现与关键参数调优指南。

weixin_29051811的博客 307

从零开始:如何用大语言模型构建你的第一个路径规划智能体

本文详细介绍了如何利用大语言模型(LLM)构建路径规划智能体,从基础概念到实战案例,涵盖TSP和CVRP问题的解决方案。通过选择合适的LLM模型、设计有效的提示工程和实现自我验证,即使没有运筹学背景也能快速上手。文章还提供了部署与优化智能体的实用技巧,帮助读者在物流配送、机器人导航等领域应用这一技术。

weixin_28256233的博客 488

python svn模块_Python 获取SVN 文件

背景:最近要从SVN 服务器的一个文件夹里面check out 八十几个文件,但是这个文件夹比较大,里面有几千个文件。由于服务器在印度,check out 非常缓慢而且经常莫名其妙地断开连接。(吐槽下:谁在维护这个服务器啊,服务器太慢啦,为什么把这么多文件放在同一个文件夹啊)于是我放弃将整个文件夹check out出来的想法,准备单独check out 这八十几个文件。平时取单个文件的时候,我是通...

weixin_39572288的博客 1806

Autodesk软件网络授权破解

Autodesk 全系列产品网络授权破解 此网络许可授权破解文件及方法适用Autodesk 绝大部分的产品, 安装网络许可证管理器Autodesk网络许可证管理器x64位官方下载地址( https://knowledge.autodesk.com/sites/default/files/file_downloads/nlm11.14.1.3_ipv4_ipv6_win64.msi ) Autod...

weixin_33919950的博客 8268

python:删除.svn文件

简介公司使用SVN维护代码资源,每次从SVN文件夹下拷贝东西,文件夹下都有.svn文件夹,这样每个文件夹和文件图标都有一些符号,影响查看文件类型,使用python脚本删除文件夹下所有的.svn文件代码#! /windows''' File : CodeLine.py Author : HCLAC E-Mail : hclac@sina.com '''impor

aa779025105的专栏 1221

基于YOLOv8的人群聚集检测系统:含UI界面设计与数据集应用

人群聚集检测是智慧城市、公共安全和疫情防控等领域的重要任务。本文结合YOLOv8最新目标检测技术,设计并实现了一个高效的人群聚集检测系统,支持可视化UI界面操作,方便用户实时检测和分析视频中的人群密度。本文详细介绍了系统设计思路、使用的数据集、YOLOv8模型训练和推理过程,以及UI界面的开发与整合。最后通过实验验证了该系统的实用性和性能表现。更灵活的模型架构强化的特征融合网络(PAN++)自动混合精度训练支持支持多任务学习(目标检测+分类+分割)预训练模型丰富,适应多种应用场景。

YOLO 434

先进封装类别分析与典型案例

当制程微缩逼近物理极限、单颗大芯片(reticle limit)面积受限于光罩尺寸,且逻辑、存储、射频、传感等功能无法用同一套工艺最经济地制造时,性能增益的来源从 "晶体管密度" 转向 "互连密度"。先进封装的本质,是在芯片外部用更短、更密、更宽的路径把多个裸 die(die)互连起来,换取更高带宽、更低延迟、更小体积和异构集成能力。行业通常按划分为 2D、2.5D、3D、扇出、SiP 五大谱系,Chiplet/UCIe 则是贯穿其上的设计方法论,玻璃基板、共封装光学(CPO)是正在成型的新分支。

0 36

二种方法实现删除SVN文件夹(python和批处理)

有时复制某个版本库的时候会有一些.svn的文件夹很讨厌有的时候还很暂空间,怎么办? Python实现方法: #coding:utf-8 #删除SVN相关的目录 import urllib2 import urllib import os import shutil homedir = os.getcwd() def walk_dir(homedir,topdown=True):

猫叔的专栏 3228

作物生长模型Oryza V3实战1:为什么要研究它

ORYZAV3是水稻生长模拟模型ORYZA2000的最新升级版本(3.5版),作为作物生长模型,它通过数学方法和计算机技术模拟水稻生长发育过程及其与环境条件的相互作用。主要功能包括:模拟不同条件下的水稻生长和产量形成、评估环境胁迫影响、分析土壤碳氮动态以及进行区域尺度模拟。国内应用广泛,科研机构用于气候变化影响评估、灌溉模式比较等研究,并开展参数敏感性分析和应用培训。使用流程分为六个步骤:确定输入参数(气象、土壤、作物三类)、参数校准、设置模拟环境、运行模型、分析结果(输出50个参数)和计算产量(穗干重×收

505

删除.svn的python脚本

删除源代码中所有的.svn文件夹

Fany的专栏 602

撸毛笔记-电信营业厅 v5.03

电信营业厅 v5.03签到和完成部分金豆任务, 喂宠物7天,15天,28天连签抽奖, 宠物等级权益兑换自己设置电信的服务密码, 把 手机号#服务密码 填到变量里:每天运行一两次const $ = new Env("电信营业厅");

xiaoshun007的专栏 4498

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

python在windows调用svn-pysvn

作为EBS开发人员,开发工具用的多,部署代码类型多,管理程序麻烦,操作繁琐,一直是我最讨厌的事情。部署一次程序要使用好几个工具,改来改去,上传下载,实在难受。扣了一下python,打算做一款集成工具,把代码管理、程序部署一步搞下来。中间有几个技术难点需要打通:1. ERP调用linux的ssh执行shell获得源代码,下载到本机2. 将源代码结构化存储并放到svn下,上传svn同步版本3. 调用Jenkins执行部署,将源代码部署到正式环境4. 该操作步骤做记录留底。

biqidaoer的专栏 2909

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

Python 获取shell脚本参数并拉取svn资源

接收shell参数,拉取svn资源

weixin_47301645的博客 772

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

python 模拟浏览器下载文件-Python 模拟浏览器 获取SVN 文件

1.[代码]GetFilesFromSVN.py#----------------------------------------------# Author : Jeff Yu# Date : 2012-8-13# Function : get files from SVN#----------------------------------------------#-----...

weixin_37988176的博客 423

一段删除.svn目录的python脚本

代码如下: #!/usr/bin/env python # -*- coding: utf-8 -*- import os import sys import shutil # call the delete_svn function def delete_svn(root_dir): subdir_list = os.listdir(root_dir) for name in

把事情做到极致 1430

Python递归删除.svn文件夹

import os, stat; root_dir = r'X:\XXX\XXX'; def walk(path): for item in os.listdir(path): subpath = os.path.join(path, item)

沧海浮云的世界 一步一个脚印 2581

python批量删除文件夹_Python批量删除windows下svn文件夹的方法

本文为Python批量删除windows下的svn文件夹的方法。几乎每一个目录下都有svn文件夹,手动删除费时费力还容易出现纰漏,那可不可以用python脚本来解决这个事情呢?当然可以了,下面就为大家提供一段可以自动清理windows下svn文件夹的方法的代码示例。这段Python批量删除windows下svn文件夹的方法的代码,有很详细的注释,第一段语句的含义都很清楚的标明了。正文代码如下:# ...

weixin_39934613的博客 460
上一篇: 【JAVA& Velocity】velocity配置详解
下一篇: 【淘宝&SEO】淘宝官方SEO资料
onebody
博客等级 码龄25年 74粉丝 142原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值