def cp(filename, pwd, folder, user): ''' 复制文件 ''' if pwd == '/': print("不能将文件复制到根目录") return folderList = pwd.split("/") oldFolder = folder newname = folderList.pop(-1) # 最后一个默认是新文件名 if not len(newname): print("目标文件名不能为空") return if not len(folderList): # 当前文件夹下 # 判断重名 for each in folder.fileList: if each.name == newname: print("文件重名") return # 找到要复制的文件 for each in oldFolder.fileList: if each.name == filename: # 新建文件 file = File(newname) file.content = each.content folder.fileList.append(file) break else: print("文件不存在") return # 其他情况, # 先切换到目标目录 pwd = pwd[:pwd.rfind(newname) - 1] if not len(pwd): # 此时说明在根目录下 print("不能将文件复制到根目录下") return folder = cd(pwd, folder, user) # 再复制文件 # 判断重名 for each in folder.fileList: if each.name == newname: print("文件重名") return # 找到要复制的文件 for each in oldFolder.fileList: if each.name == filename: # 新建文件 file = File(newname) file.content = each.content folder.fileList.append(file) break else: print("文件不存在") return