如何以编程方式从 Windows 中的同步 SharePoint 目录下载文件?

问题描述 投票:0回答:1

我使用 OneDrive 将 SharePoint 目录同步到我的 Windows 文件系统。如下图所示,有些文件在本地可用,而另一些文件只能在云端获取:

Screenshot

当我双击仅在云中可用的文件时,它会自动下载。但是,我想使用终端 (CMD) 以编程方式实现相同的结果。

这是我尝试过的:

  1. 我导航到包含该文件的目录:

    cd "C:\Users\MyUsername\OneDrive\Documents"
    
  2. 我尝试使用

    attrib
    命令使文件在本地可用:

    attrib -P +U my_file.iso
    

    这不会产生任何输出,文件仅保留在云端。

  3. 我也尝试过不使用文件扩展名:

    attrib -P +U my_file
    

    这导致了错误:

    Could not find that file.
    

我需要什么

我想以编程方式触发从同步的 SharePoint 目录下载特定文件(例如,

my_file.iso
)以使其在本地可用,而无需手动双击它。

其他详细信息

  • 目录使用 OneDrive 同步。
  • 在文件资源管理器中双击文件即可成功下载。
  • 我确认文件名和路径是正确的。

到目前为止我已经尝试过的事情

  • 在文件上使用
    attrib -P +U
  • 使用
    dir
    检查文件是否存在于目录中。
windows sharepoint cmd onedrive
1个回答
0
投票

我发现我可以使用这个简单的 PowerShell 脚本:

\$filePath = "${filePath.replace('/', '\\')}" 

if (!(Test-Path \$filePath)) {
    throw "Could not find ISO file at \$filePath"
}

\$fileAttributes = (Get-Item \$filePath).Attributes
if (\$fileAttributes -band [System.IO.FileAttributes]::Offline) {
    Write-Host "The file is only available in the cloud. Downloading..."
    Get-Content \$filePath > \$null
    Write-Host "The file has been successfully downloaded."
} else {
    Write-Host "The file is already available locally."
}
© www.soinside.com 2019 - 2024. All rights reserved.