使用Python来删除一个文件夹下所有以"TCGA"打头的文件夹或文件,使用os
和glob
模块来实现。以下是一个简单的Python脚本示例:
import os
import glob
# 设置你想要搜索的目录路径
directory_path = '/path/to/your/directory'
# 搜索所有以"TCGA"开头的文件夹和文件
for item in glob.glob(os.path.join(directory_path, 'TCGA*')):
# 检查当前项是否是文件夹
if os.path.isdir(item):
print(f"Removing directory: {item}")
# 删除文件夹及其所有内容
os.rmdir(item) # 注意:os.rmdir()只删除空文件夹
else:
print(f"Removing file: {item}")
# 删除文件
os.remove(item)
# 如果需要递归删除非空文件夹,可以使用以下代码
for root, dirs, files in os.walk(directory_path):
for name in files:
if name.startswith('TCGA'):
os.remove(os.path.join(root, name))
for name in dirs:
if name.startswith('TCGA'):
shutil.rmtree(os.path.join(root, name))
os.rmdir()
只能删除空文件夹,如果文件夹非空,需要使用 shutil.rmtree()
来递归删除文件夹及其所有内容。在脚本中,使用了 os.walk()
来遍历目录树,并使用 shutil.rmtree()
来删除以"TCGA"开头的非空文件夹。
在运行此脚本之前,请确保替换 directory_path
为目标目录路径,并谨慎使用,因为删除操作是不可逆的。如果不确定,可以先打印出将要删除的文件和文件夹的列表,然后再执行删除操作。