Compartir a través de

azcopy remove

从 Azure 存储帐户中删除 blob 或文件。

摘要

azcopy remove [resourceURL] [flags]

示例

使用 SAS 令牌删除单个 Blob:

azcopy rm "https://[account].blob.core.chinacloudapi.cn/[container]/[path/to/blob]?[SAS]"

使用 SAS 令牌删除整个虚拟目录:

azcopy rm "https://[account].blob.core.chinacloudapi.cn/[container]/[path/to/directory]?[SAS]" --recursive=true

仅删除虚拟目录内的 blob,但不删除任何子目录或这些子目录中的 blob:

azcopy rm "https://[account].blob.core.chinacloudapi.cn/[container]/[path/to/virtual/dir]" --recursive=false

删除虚拟目录中的一部分 blob(例如:仅删除 jpg 和 pdf 文件,或者删除名为“exactName”的 blob):

azcopy rm "https://[account].blob.core.chinacloudapi.cn/[container]/[path/to/directory]?[SAS]" --recursive=true --include-pattern="*.jpg;*.pdf;exactName"

删除整个虚拟目录,但从范围中排除某些 blob(例如:以 foo 开头或以 bar 结尾的每个 blob):

azcopy rm "https://[account].blob.core.chinacloudapi.cn/[container]/[path/to/directory]?[SAS]" --recursive=true --exclude-pattern="foo*;*bar"

从 Azure 存储 中删除 blob 的指定版本 ID。 确保源是有效的 Blob 和 versionidsfile,它采用文件的路径,其中每种版本都写入单独一行上。 将从 Azure 存储中删除所有指定的版本。

azcopy rm "https://[srcaccount].blob.core.chinacloudapi.cn/[containername]/[blobname]" "/path/to/dir" --list-of-versions="/path/to/dir/[versionidsfile]"

删除特定 blob 和虚拟目录,方法是使用 --list-of-files 标志将其相对路径(非 URL 编码)置于文本文件中(例如:list.txt)。 在文本文件中,每个 blob 和虚拟目录都以单独的行编写。 由于检索对象属性的额外事务,标志 --list-of-files 可能会产生性能成本。

azcopy rm "https://[account].blob.core.chinacloudapi.cn/[container]/[path/to/parent/dir]" --recursive=true --list-of-files=/usr/bar/list.txt

从采用分层命名空间的 Blob 存储帐户中删除单个文件(不支持 include/exclude):

azcopy rm "https://[account].dfs.core.chinacloudapi.cn/[container]/[path/to/file]?[SAS]"

从采用分层命名空间的 Blob 存储帐户中删除单个目录(不支持 include/exclude):

azcopy rm "https://[account].dfs.core.chinacloudapi.cn/[container]/[path/to/directory]?[SAS]"

选项

--cpk-by-name(字符串)- 客户端按名称提供的密钥使客户端可以向 Azure Blob 存储发出请求,以便按每个请求提供加密密钥。 提供的密钥名称将从 Azure 密钥保管库提取,并用于对数据进行加密。

--cpk-by-value - 默认值为 false。 客户端按名称提供的密钥使客户端可以向 Azure Blob 存储发出请求,以便按每个请求提供加密密钥。 提供的密钥及其哈希将从环境变量 CPK_ENCRYPTION_KEYCPK_ENCRYPTION_KEY_SHA256 中提取。

--delete-snapshots(字符串)如果 blob 有快照,删除操作默认将失败。 可指定“include”以删除根 blob 及其所有快照;也可指定“only”以仅删除快照,但保留根 blob。

--dry-run - 默认值为 false。 打印命令将删除的路径文件。 此标志不会触发文件的删除。

--exclude-path(字符串)删除时排除这些路径。 此选项不支持通配符 (*)。 检查相对路径前缀。 例如:myFolder;myFolder/subDirName/file.pdf

--exclude-pattern(字符串)排除名称与模式列表相匹配的文件。 例如: .jpg; .pdf;exactName

--force-if-read-only - 默认值为 false。 删除 Azure 文件存储文件或文件夹时,即使现有对象已设置其只读属性,也会强制执行删除操作

--from-to(字符串)(可选)指定源-目标组合。 例如:BlobTrash、FileTrash、BlobFSTrash

-h, --help有关删除的帮助

--include-after(字符串)只包括在给定日期和时间或之后修改的文件。 该值应为 ISO8601 格式。 如果未指定时区,则假定该值位于运行 AzCopy 的计算机的本地时区(例如:表示 UTC 时间的“2020-08-19T15:04:00Z”)或表示本地时区午夜 (00:00) 的“2020-08-19”。 从 AzCopy 10.5 开始,此标志仅适用于文件,不适用于文件夹,因此当将此标志与 --preserve-smb-info--preserve-smb-permission 一起使用时,将不会复制文件夹属性。

--include-before(字符串)只包括在给定日期和时间或之前修改的文件。 该值应为 ISO8601 格式。 如果未指定时区,则假定该值位于运行 AzCopy 的计算机的本地时区(例如:表示 UTC 时间的“2020-08-19T15:04:00Z”)或表示本地时区午夜 (00:00) 的“2020-08-19”。 从 AzCopy 10.7 开始,此标志仅适用于文件,不适用于文件夹,因此当将此标志与 --preserve-smb-info--preserve-smb-permissions 一起使用时,将不会复制文件夹属性。

--include-path(字符串)删除时仅包括这些路径。 此选项不支持通配符 (*)。 检查相对路径前缀。 例如:myFolder;myFolder/subDirName/file.pdf

--include-pattern(字符串)仅包括名称与模式列表相匹配的文件。 例如: .jpg; .pdf;exactName

--list-of-files(字符串)定义要删除的文件和目录列表所在文本文件的位置。 相对路径应由换行符分隔,路径不应进行 URL 编码。

--list-of-versions(字符串)指定一个文本文件,其中每个版本 ID 都列在单独的一行中。 确保源必须指向单个 Blob,并且使用此标志在文件中指定的所有版本 ID 必须仅属于源 Blob。 给定 Blob 的指定版本 ID 将从 Azure 存储中删除。

--permanent-delete(字符串)这是永久删除软删除快照/版本的预览功能。 可能的值包括“snapshots”、“versions”、“snapshotsandversions”、“none”。 (默认值为“None”)

--trailing-dot 默认情况下启用,会以安全方式处理文件共享相关操作。 可用选项:EnableDisable。 选择 Disable 可返回到对尾随点文件的旧式处理(可能不安全),其中文件服务将剪裁路径中的任何尾随点。 如果传输包含两个仅相差一个尾随点的路径(例如 mypathmypath.),这可能导致潜在的数据损坏。 如果此标志设置为 Disable 并且 AzCopy 遇到尾随点文件,它将在扫描日志中警告客户,但不会尝试中止操作。 如果目标不支持尾随点文件(Windows 或 Blob 存储),则如果尾随点文件是传输的根目录,AzCopy 将失败,并跳过枚举期间遇到的任何尾随点路径。

--recursive - 默认值为 false。 在目录之间同步时,以递归方式查看子目录。

从父命令继承的选项

--cap-mbps float限定传输速率,以 Mbps(兆位/秒)为单位。 瞬间吞吐量可能与上限略有不同。 如果此选项设置为零或被省略,则吞吐量不受限制。

--output-type(字符串)命令输出的格式。 选项包括:text、json。 默认值为“text”。 (默认值为“text”)

--trusted-microsoft-suffixes(字符串)指定可以在其中发送 Microsoft Entra 登录令牌的其他域后缀。 默认值为“.core.windows.net;.core.chinacloudapi.cn;.core.cloudapi.de;.core.usgovcloudapi.net;*.storage.azure.net”。 此处列出的任何内容都会添加到默认值。 为安全起见,应只在此处放置 Azure 域。 用分号分隔多个条目。

--log-level(字符串)定义日志文件的日志详细程度。 可用级别包括:INFO(所有请求/响应)、WARNING(响应缓慢)、ERROR(仅限失败的请求)和 NONE(无输出日志)。 (默认值为“INFO”)(默认值为“INFO”)

另请参阅