gpt4 book ai didi

python - pysmb递归删除文件夹子文件夹和文件

转载 作者:太空宇宙 更新时间:2023-11-04 09:58:31 37 4
gpt4 key购买 nike

我有一个共享文件夹,根目录下有一个文件夹,里面有子文件夹和文件。

我找不到如何递归删除根目录下的文件夹及其子文件夹和文件。

请问有什么帮助吗

谢谢

最佳答案

这是 Michael 为 python 2.7 编写的函数:

from smb.SMBConnection import SMBConnection

dry_run = True # Set to True to test if all files/folders can be "walked". Set to False to perform the deletion.
userID = 'myuser'
password = 'mypassword'
client_machine_name = 'testclient' # Usually safe to use 'testclient'
server_name = 'MYSERVER' # Must match the NetBIOS name of the remote server
server_ip = '192.168.1.10' # Must point to the correct IP address
domain_name = '' # Safe to leave blank, or fill in the domain used for your remote server
shared_folder = 'smbtest' # Set to the shared folder name

conn = SMBConnection(userID, password, client_machine_name, server_name, domain=domain_name, use_ntlm_v2=True, is_direct_tcp=True)
conn.connect(server_ip, 445)

def walk_path(path):
print 'Walking path', path
for p in conn.listPath(shared_folder, path):
if p.filename!='.' and p.filename!='..':
parentPath = path
if not parentPath.endswith('/'):
parentPath += '/'

if p.isDirectory:
walk_path(parentPath+p.filename)
print 'Deleting folder (%s) in %s' % ( p.filename, path )
if not dry_run:
conn.deleteDirectory('smbtest', parentPath+p.filename)
else:
print 'Deleting file (%s) in %s' % ( p.filename, path )
if not dry_run:
conn.deleteFiles('smbtest', parentPath+p.filename)

# Start and delete everything at shared folder root
walk_path('/')

关于python - pysmb递归删除文件夹子文件夹和文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44871317/

37 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com