PSGdriveManager.psm1
$URL=@{ x32="https://docs.google.com/uc?id=0B3X9GlR6EmbnV3RNeFVUQjZvS2c&export=download"; x64="https://drive.google.com/uc?id=0B3X9GlR6EmbnbnBsTXlfS1J5UjQ&export=download" } $gdrive_path="${HOME}/gdrive" <# .SYNOPSIS gdrive をインストールします。 .PARAMETER x32 32 bit 版 gdrive をインストールします。 .PARAMETER x64 64 bit 版 gdrive をインストールします。 #> function Install-Gdrive([switch]$x32,[switch]$x64){ if((Test-Path $gdrive_path) -eq $false){ New-Item -ItemType "directory" $gdrive_path } if(Test-Path "${gdrive_path}/gdrive.exe"){ Remove-Item "${gdrive_path}/gdrive.exe" } if($x32){ Invoke-WebRequest $URL["x32"] -OutFile "${gdrive_path}/gdrive.exe" }elseif($x64){ Invoke-WebRequest $URL["x64"] -OutFile "${gdrive_path}/gdrive.exe" }else{ Write-Output "オプションを指定してください。" } } <# .SYNOPSIS gdrive をアンインストールします。 #> function Uninstall-Gdrive(){ if(Test-Path $gdrive_path){ Remove-Item -Recurse $gdrive_path } } <# .SYNOPSIS 環境変数 Path へ gdrive がインストールされているフォルダーのパスを追加します。 #> function Set-GdrivePath(){ $env:Path="${env:Path}${gdrive_path};" } <# .SYNOPSIS Google Drive とローカルフォルダーを同期します。 .PARAMETER upload ローカルフォルダーから Google Drive へ同期します。 .PARAMETER download Google Drive からローカルフォルダーへ同期します。 .PARAMETER path ローカルフォルダーのパスを指定します。 .PARAMETER file_id Google Drive の fileID を指定します。 #> function Sync-Gdrive([switch]$upload,[switch]$download,[string]$path,[string]$file_id){ if($upload){ gdrive sync upload --keep-local --delete-extraneous $path $file_id }elseif($download){ gdrive sync download --keep-local --delete-extraneous $file_id $path } } |