我有一个装有 Google Drive 的 Windows 盒子,用于将文件流式传输到本地G:
(默认行为)。
当我从互联网上下载文件并将其保存到本地 Google Drive 时,它们会显示有关其来源的常见窗口警告(通常通过单击unblock
“文件属性”窗口进行重置)。这对我自动化工作流程的尝试产生了不良的连锁反应。我被引导相信这些信息存储在 NTFS 备用数据流 (ADS) 中。
我尝试过使用 sysinternals流实用程序来访问它,但它报告说the specified volume does not support streams.
阅读后,我尝试使用 PowerShell 进行访问本文,但却没有得到任何快乐:
Get-Item .\some-file-name.mp3 -Stream *
回报Get-Item : The parameter is incorrect
。
手动选项(在资源管理器中右键单击文件,选择“属性”,然后选择“解除阻止”)仍然可用且运行良好。
我想自动删除从互联网上下载标记,并且更愿意避免将文件移动到其他地方,设置标记,然后将其移回。这是我唯一的选择吗?
(令人恼火的是,谷歌搜索这个变得更加困难,因为“ADS”也被解释为“广告”,就像广告一样 - 所以除非文章使用全名备用数据流那么它们就很难被找到。
答案1
由于您的主要问题是能够在工作流中解除对互联网文件的阻止,因此您可以使用 PowerShell 来实现。
要使用的命令是 解除文件阻止, 被形容为:
Unblock-File cmdlet 可让您打开从 Internet 下载的文件。它可解除对从 Internet 下载的 PowerShell 脚本文件的阻止,以便您可以运行它们,即使 PowerShell 执行策略为 RemoteSigned 也是如此。默认情况下,这些文件被阻止,以保护计算机免受不受信任文件的侵害。
该命令有多种使用方式。下面是两个示例。
取消阻止一个文件:
Unblock-File -Path C:\Users\User01\Documents\Downloads\PowerShellTips.chm
解除对多个文件的阻止:
dir C:\Downloads\*PowerShell* | Unblock-File