Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用PowerShell从Google Drive下载文件_Powershell_Download_Flysystem Google Drive - Fatal编程技术网

使用PowerShell从Google Drive下载文件

使用PowerShell从Google Drive下载文件,powershell,download,flysystem-google-drive,Powershell,Download,Flysystem Google Drive,现在,在尝试使用PowerShell下载文件时,我有以下几点 $client = new-object System.Net.WebClient $client.DownloadFile($AGRIDATAMISCURL,$TESTAGRIDATAMISCZIP) 其中,$AGRIDATAMISCURL是一个类似于“”的URL,$TestArigridataMiscZip类似于“C:\test\a.zip” 此脚本不会返回错误,但它下载的文件基本上是一个HTML文件,并提示登录到Google。

现在,在尝试使用PowerShell下载文件时,我有以下几点

$client = new-object System.Net.WebClient
$client.DownloadFile($AGRIDATAMISCURL,$TESTAGRIDATAMISCZIP)
其中,$AGRIDATAMISCURL是一个类似于“”的URL,$TestArigridataMiscZip类似于“C:\test\a.zip”

此脚本不会返回错误,但它下载的文件基本上是一个HTML文件,并提示登录到Google。是否有其他方法下载“与我共享”的文件?

先共享文件 Google Drive中的文件在下载之前必须可以共享。从PowerShell运行时没有安全上下文,因此文件下载失败。(要检查此问题,请使用“.html”扩展名重命名文件,并在文本编辑器中查看)。 注意:以下解决方案假设链接指向非安全关键文件,或者链接将只提供给那些可以信任访问的人(链接是https,因此通过传输进行加密)。另一种选择是通过编程方式向谷歌进行身份验证——这在回答中没有提到

要共享文件,请在Google Drive中:

  • 右键单击该文件,然后选择“获取可共享链接”


  • 2.打开链接共享


  • 单击共享设置

  • 确保拥有该链接的任何人都可以查看该链接(请注意,在公司环境中,该链接必须与组织外的人共享,以避免登录)

  • 然后按程序下载
  • 然后,可以使用代码下载文件(在本例中,使用Windows PowerShell):


    • 1CWPZYJIZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ

    查看此处提供的答案:您可能还希望使用单词
    OAuth
    和/或与PowerShell或Google Drive结合搜索答案。该链接提供的帮助主要解决了代理错误和对文件路径与文件夹路径的误解。由于这不涉及代理,并且提供了完整的文件路径,因此此链接不提供任何其他信息。搜索PowerShell和OAuth确实提供了选项。但如何将这些选项转换为谷歌硬盘(特别是“与我共享”的文件)仍然难以捉摸。
    # Download the file
    $zipFile = "https://drive.google.com/uc?export=download&id=1cwwPzYjIzzzzzzzzzzzzzzzzzzzzzzzz"
    Invoke-WebRequest -Uri $zipFile -OutFile "$($env:TEMP)\myFile.doc"