AWS Tools for PowerShell を PowerShell にインストールしてファイルの一括アップロード
AWS Tools installer のインストール
AWS Cli と AWS Tools for PowerShell でも構文違うの面倒くさいなぁと思いつつ
PS C:\WINDOWS\system32> Install-Module -Name AWS.Tools.Installer 続行するには NuGet プロバイダーが必要です PowerShellGet で NuGet ベースのリポジトリを操作するには、'2.8.5.201' 以降のバージョンの NuGet プロバイダーが必要です。NuGet プロバイダーは 'C:\Program Files\PackageManagement\ProviderAssemblies' または 'C:\Users\ikeno\AppData\Local\PackageManagement\ProviderAssemblies' に配置する必要があります。'Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201 -Force' を実行して NuGet プロバイダーをインストールすることもできます。今すぐ PowerShellGet で NuGet プロバイダーをインストールしてインポートしますか? [Y] はい(Y) [N] いいえ(N) [S] 中断(S) [?] ヘルプ (既定値は "Y"): y 信頼されていないリポジトリ 信頼されていないリポジトリからモジュールをインストールしようとしています。このリポジトリを信頼する 場合は、Set-PSRepository コマンドレットを実行して、リポジトリの InstallationPolicy の値を変更してください。'PSGallery' からモジュールをインストールしますか? [Y] はい(Y) [A] すべて続行(A) [N] いいえ(N) [L] すべて無視(L) [S] 中断(S) [?] ヘルプ (既定値は "N"):Y
PS C:\WINDOWS\system32> Install-AWSToolsModule AWS.Tools.EC2,AWS.Tools.S3 -CleanUp 確認 この操作を実行しますか? 対象 "AWS Tools version 4.1.346.0" に対して操作 "Install-AWSToolsModule" を実行しています。 [Y] はい(Y) [A] すべて続行(A) [N] いいえ(N) [L] すべて無視(L) [S] 中断(S) [?] ヘルプ (既定値は "Y"): Installing module AWS.Tools.EC2 version 4.1.346.0 Installing module AWS.Tools.S3 version 4.1.346.0 PS C:\WINDOWS\system32>
IAM を使用してユーザを作成して「セキュリティ認証情報」からアクセスキーを生成する
アクセスキーを設定する
PS C:\> Set-AWSCredential ` >> -AccessKey [Accesskey] ` >> -SecretKey [秘密鍵] ` >> -StoreAs [プロファイル名、デフォルトなら default]
目的のファイルが有るフォルダに移動して
foreach ($f in Get-ChildItem ) { Write-S3Object -BucketName [S3バスケット名] ` -File $f -Key [オブジェクト名]/$f -CannedACLName public-read -ProfileName [IAMプロファイル名] }
参考:
AWS Tools for PowerShell とは何ですか? - AWS Tools for PowerShell