如何删除整个目录树
发布网友
发布时间:2022-05-09 04:56
我来回答
共1个回答
热心网友
时间:2022-04-18 15:08
<!----> 当我们写python代码的时候,如果需要删除指定路径下的文件我们可以使用os.remove 或者os.unlink,那么python语言如何删除整个目录树的文件呢?
一个好的方法是可以使用shutil.rmtree(),该方法可以删除整个目录树,给定的参数为一个指向目录的路径,使用方法如下:
import shutil
shutil.rmtree("目录树路径“)
下面的来举个实际的例子,删除/ostmp/tdir/folder/目录和目录里的所有文件:
#coding=utf-8
#!/usr/bin/python
import os
import sys
import shutil
##获取要删除的目录树路径
rmdir=raw_input("请输入目录名:")
###下面使用try来检测异常,如果失败会抛出一个异常
try:
shutil.rmtree(rmdir)
except OSError, e:
print ("错误: %s-%s." % (e.filename,e.strerror))
程序输出如下:[root@devops ~]# python rmdir.py
请输入目录名:test.txt
错误: test.txt-No such file or directory.
[root@devops ~]# python rmdir.py
请输入目录名:/root/test.txt
错误: /root/test.txt-No such file or directory.
Windows2000/XP的命令行模式中如何删除目录树?
如果你需要在Windows 2000/XP的命令行模式下删除目录树,你需要使用内置的RD命令,加上"/S"参数。这个参数表示"删除目录树",它会递归地删除指定目录及其所有子目录和文件,无需用户确认,除非你选择"/Q"(安静模式),在这种模式下删除时会跳过确认步骤。然而,值得注意的是,对于纯DOS环境(如Win9X...
linux删除目录树 rm -r 递归 求举例讲解
rm -rf /home/s1命令,就可以强制删除这个目录了。
DOS 下删除目录树
用rd命令删除目录时,要先把目录中的文件删除,如果目录内还有子目录,就需要先进入此目录内,用rd命令把子目录删除。如果子目录下还有更深一层的子目录和文件,就要重复上述工作,可以想象,当目录层数很多时,删除起来就会相当麻烦。为此DOS提供了一条快速删除目录的命令--deltree,这条命令不管目录下面...
dos语句中删除目录树 和删除文件有什么区别
删除目录树就是用deltree把整个目录连同里面的子目录和文件全部删除 删除文件就是用del删除指定文件 删除单个目录就是用rd删除(rd前提是要删除的目录是空的,里面不能子目录或文件)
Linux中目录的创建与删除命令使用说明
删除目录树:rm -ir tmp 这个命令递归的删除tmp目录下所有子目录下的内容,对于每个文件的删除都会提示你,然后删除tmp目录本身。cd 命令 cd 命令用来更改目录。语法:语法是 cd [目录名 | ~ | ./ | ../ | - ]命令开关: ...
win7下的 dos 怎么用deltree?
deltree是dos下删除目录树的外部命令,win7的cmd命令行模式已不在保留该命令,可以rd命令替代。使用方法如下:1、按win+r,输入cmd,点击确定;2、提示符后输入rd/?,回车即可查看命令参数;3、提示信息中说明rd /s 即可删除目录树,例如:rd /s c:\file。
如何在DOS下删除文件夹?
答一、删除目录树:F:\>deltree e:\11 删除文件:F:\>del e:\11\*.删除空目录:F:\>rm e:\11 答二、F:\>e: (进入E盘)F:\>cd 11 (进入11文件夹)F:\>del *.* (删除11文件夹中的所有文件,出现提示后按Y键,回车)F:\>cd.. (回到上一级目录)F:\>rd 11 ((删除11文件夹)...
dos下删除文件夹树?
你在XP自带的虚拟DOS下肯定不能用deltree了 XP的虚拟DOS根本没有deltree这个命令,估计是比较危险的命令,怕被骇客利用吧。你用98盘进入纯DOS下就可以用deltree了
-R -R是什么意思?
-R通常是指“递归”。在计算机编程中,递归是一种算法或函数的设计方法,其中一个函数调用自身。递归在处理数据结构(如树或链表)或解决问题时非常有用。在命令行中,-R可以用于操作系统中的文件和目录,表示需要递归地处理所有子目录和文件。例如,可以使用“rm -R”命令删除整个目录树。-R还可以指...
请问如何删除一个目录下所有名字为Debug的目录(无论多少层)?
要删除f:\setup下所有名字为Debug的目录(无论多少层)。包括Debug下所有的文件。用以下命令:for /r f:\setup %a in (Debug) do @if exist %a rd /s /q %a 解释:for 是循环命令 ,/r 参数遍历整个f:\setup目录树,查找Debug目录并把包括完整路径在内的目录名称赋值给%a,判断if exist...