Skip to content
Back to top

# 文件操作

通过该功能，您可以将搜索结果列表中所有选中的文件和文件夹移动到您选择的目的地、将其存档到 ZIP 文件中、删除它们或处理文件。

可通过 "主页 > 移动项目 "访问该功能。

文件操作对话框采用 双面板布局：

- 左侧面板 包含所有操作设置--文件操作类型、目标路径和其他选项。

- 右侧面板 显示受影响文件的 预览，包括受影响项目的数量、已检查项目的总大小，以及将由操作处理的所有文件的列表。

通过其他选项，您可以根据自己的需要定制文件操作。

各项功能的说明见下表：

## 文件操作

### 删除项目

在安全提示后删除所有选定文件。如果激活了 "移动到回收站 "选项，文件将被移动到回收站。否则将从硬盘中删除。信息：在未设置上述功能的情况下进行的删除操作不能轻易撤销。

### 移动项目

将选定的文件移动到指定路径。可选择在原位置创建快捷方式或链接，每个快捷方式或链接都指向被移动对象的新位置。如果需要，还可以复制安全属性。如果不这样做，被移动的文件将从其父元素继承安全属性（与通常一样）。

### 复制项目

将选定的文件复制到指定路径。如果需要，还会复制安全属性。如果不这样做，被移动的文件将从其父元素继承安全属性（与通常一样）。

### 压缩项目

将选定的文件移动到指定的 ZIP 压缩包。

### 将项目作为参数传递给可执行文件

为每个标记文件调用一个可自由选择的可执行文件，并将文件的绝对路径作为第一个参数传递给命令行。可执行文件也可以是批处理文件、PowerShell 脚本、VBScript 或类似文件。Windows 脚本 FileSystemObject 提供了功能强大且易于使用的文件系统和路径操作。

## 选项

### 移至回收站（如有）

在这里，您可以指定是将所选项目移至回收站，还是直接从硬盘中删除。

Note

该选项仅适用于 "删除 "操作。

### 仅跳过/重命名/替换/替换现有旧文件

在此，您可以决定在文件操作过程中发生名称碰撞时应如何处理，即在目的地已经存在同名文件。您可以保留现有文件、用新文件替换或重命名现有文件。

Note

此选项仅适用于 "压缩"、"移动 "和 "复制 "操作。刻录到光盘时不支持。

### 操作后删除空文件夹

自动删除所有因移动操作而不再包含文件或其他文件夹的文件夹。

### 拉上拉链后保留原有物品

启用此选项可确保将原始文件复制到 Zip 文件后不会被删除。

Note

该选项仅适用于 "压缩 "操作。

### 保留原始项目的权限

启用此选项后，原始文件的访问权限将应用到目标中的每个移动文件。

Note

此选项仅适用于 "移动 "和 "复制 "操作。刻录到光学介质时不支持。

### 保留目录结构，从级开始

通过该选项，可以指定应在哪一级保留文件的目录结构。目录结构的前 x 层不会在目标位置重建。

例如，如果你将文件 "C:UserMayerMy Document.doc "移动到目标文件夹 "D:Old Files"，根据你选择的 x 值，你会得到以下结果：

`x = 0 > 'D:\Old Files\C\User\Mayer\My Document.doc'` `x = 1 > 'D:\old files\user\Mayer\My document.doc'` `x = 2 > 'D:\old files\Mayer\My Document.doc'`

Note

该选项仅适用于 "移动 "和 "复制 "操作。

### 保留原始项目的时间戳

启用该选项后，原始文件的时间戳会应用到目标文件中的每个移动文件。

Note

此选项仅适用于 "移动 "和 "复制 "操作。刻录到光学介质时不支持。

### 将快捷方式链接留在原位置，指向新位置

如果启用此选项，则会在原始位置创建一个快捷方式或链接，指向文件被移动到的新位置。如果选择了 "链接"，且文件位于同一分区，则会创建硬链接。

如果无法创建硬链接，则创建符号链接。如果也无法创建，则创建 Windows 快捷方式。

Note

该选项仅适用于 "移动 "操作。

## 记录

### 将已执行的操作记录到

创建一个日志，文件名由您选择，并放置在您选择的目录中。文件名中可以使用 %DATE% 或 %TIME% 等环境变量。

### 创建撤销脚本

创建一个批处理文件，您可以在移动操作后执行该文件，以撤销该操作对文件系统所做的更改。

Note

此选项仅适用于 "移动 "和 "复制 "操作。刻录到光学介质时不支持。

Tip

我们建议您记录所有移动、删除和存档操作。这样做可以提高系统的安全性和清晰度。

生成的日志文件会列出你需要的所有详细信息，以便跟踪你执行的文件操作。日志以文本格式保存，如下所示

    25.06.2020 11:39:50: Start file operation.
    25.06.2020 11:39:50: Copying the following objects to "D:\MyDocs":
    25.06.2020 11:39:50: "F:\Docs\movielist.docx" => "D:\MyDocs\movielist.docx"
    2020-06-25 11:39:50: "F:\Docs\log.txt" => "D:\MyDocs\log.txt"
    25.06.2020 11:39:50: "F:\Docs\Screenshot.jpg" => "D:\MyDocs\Screenshot.jpg"
    25.06.2020 11:39:50: File operation finished.
    25.06.2020 11:39:50: Affected objects: 3 (125,90 KB) | Failed objects: 0

## 预览

文件操作对话框的右侧显示了将受当前操作影响的所有项目的预览。

### 受影响的项目数量：

显示已选中待处理的文件和文件夹的总数。

### 托运行李总重量：

显示所有选中文件的总大小。

### 预览列表

预览列表显示选定操作将处理的所有文件和文件夹。对于移动和复制操作，列表还会根据当前设置显示每个项目的目标路径，以便在执行操作前验证结果。

## 以 SharePoint 为例使用 PowerShell 脚本

我们想通过一个实例向您展示如何使用 PowerShell 脚本和 TreeSize 文件搜索功能。任务是准备将数千份文件上传到 SharePoint 服务器。

问题在于，SharePoint 的文件名中不允许使用某些字符，而这些字符在普通文件系统中是有效的，也是常用的。

使用正则表达式（可在 "正则表达式 "一章中找到），很容易找到所有违反 SharePoint 命名规则的文件。

当搜索完成后，请在对话框中选择将选中的文件移动到可执行文件。作为可执行文件，请选择您之前保存的此 PowerShell 脚本，例如 `SharePointRename.ps1`：

    Param([string]$filepath="")
    [char[]]$illegal = "~", "#", "%", "&", "*", "{", "}", "\", ":", "<", ">", "?", "/", "|"
    $replacement = "-"
    $filepathNew = [io.path]::GetFileName($filepath)
    foreach($char in $illegal){$filepathNew = $filepathNew.Replace($char, $replacement)}
    Rename-Item $filepath $filepathNew

该脚本可以很容易地进行改编或扩展，以用于更多用途。

- 统一编码 ZIP 文件