AWS をコマンドから操作する AWS CLI

● 1. AWS CLIのインストール

brew install awscli

# アップグレードする場合は次のコマンド 
brew upgrade awscli

・1-1.AWS CLIインストールの確認

which aws
aws --version

以下のように返ってくればインストールok

/opt/homebrew/bin/aws
aws-cli/2.38.3 Python/3.15.0 Darwin/24.6.0 source/arm64

● 2. AWS CLI のログイン設定

コマンドラインから次のコマンドで設定を行います
<プロファイル名>のところは IAM ユーザー名にしておくとわかりやすいと思います

aws configure --profile <プロファイル名>

実行すると次のようにリージョンを聞かれるので入力します。

(東京リージョンの場合は ap-northeast-1 )

AWS Region [us-east-1]: ap-northeast-1

続けてAIエージェント用のスキルをインストールするか聞かれるのでインストールしておきましょうめちゃくちゃ便利になります

● 3. AWS CLI コマンドの実行

・3-1. プロファイルを設定して実行する(プロファイルの設定が1度ですみます)

S3 の ディレクトリ一覧を取得する

export AWS_PROFILE=my-profile
aws s3 ls

通常は .bash_profile にでも指定しておきます

.bash_profile

# AWS CLI
export AWS_PROFILE=my-profile

・3-1. プロファイルを都度設定して実行する(プロファイル毎回指定)

S3 の ディレクトリ一覧を取得する

aws s3 ls --profile my-profile

プロファイルを先に指定してもokです

aws --profile my-profile s3 ls 

ユーザー情報を取得

aws sts get-caller-identity

● プロファイルを切り替え関数を作成する(要:fzf)

引用 : https://bit.ly/48MPfHJ

faws で切り替えコマンドが起動します。

function faws() {
  local profile=$(aws configure list-profiles | sed "/default/d" | sort | fzf )
  export AWS_PROFILE="$profile"
}

● プロファイルを切り替えるユーティリティーコマンド awsp

https://github.com/johnnyopao/awsp

● aws s3 のコマンド一覧

よく使うコマンド

バケット(フォルダ)内のファイル数とファイルサイズの合計を取得

aws s3 ls s3://[バケット名]/[フォルダ名]/  --recursive --human --sum

S3上のファイルをローカルにダウンロードする

aws s3 cp s3://【バケット名】/【フォルダ名】/  ./

S3上のフォルダ内のすべてのファイルを一括でをローカルにダウンロードする

aws s3 cp s3://【バケット名】/【フォルダ名】/  ./   --recursive

カレントディレクトリ内の sample.txt を S3 の backet-name/fonder-name にアップロードする

aws s3 cp ./sample.txt s3://backet-name/fonder-name

カレントディレクトリごと backet-name/fonder-name にアップロードする

aws s3 cp ./ s3://backet-name/fonder-name --recursive
# バケットの一覧を表示する
aws s3 ls

# バケットの内容を表示する
aws s3 ls s3://{バケット名}/{パス}

# あるバケットの使用容量を調べる
aws s3 ls s3://{バケット}/{パス}/ --recursive --human --sum

# バケットを作成する
aws s3 mb s3://{バケット名}

# バケットを削除する(空でない場合は削除されない)
aws s3 rb s3://{バケット名}

# バケットを削除する(空でなくても削除される)
aws s3 rb s3://{バケット名} --force

# バケットの内容をローカルのフォルダと同期する(追加・更新のみで削除されない)
aws s3 sync {フォルダパス} s3://{バケット名}/{パス}

# バケットの内容をローカルのフォルダと同期する(削除もされる)
aws s3 sync {フォルダパス} s3://{バケット名}/{パス} --delete

# ローカルのファイルをバケットにコピーする
aws s3 cp {ファイルパス} s3://{バケット名}/{パス}

# ローカルのファイルをバケットに移動する
aws s3 mv {ファイルパス} s3://{バケット名}/{パス}

# バケットのファイルを削除する
aws s3 rm s3://{バケット名}/{ファイルパス}

# バケットのフォルダを削除する
aws s3 rm s3://{バケット名}/{フォルダパス} --recursive

引用元 : https://bit.ly/44wCXCn

● IAM ユーザーの作成

もしIAMユーザーがない場合はIAM ユーザーの作成をしましょう

AWS コンソールにログインしたら、IAM で検索して移動し、以下のリンクからユーザーを作成します。

直接IAMユーザーを作成する場合は「IAMユーザーを作成します」を選択します

管理者権限を持ったIAMユーザーを作成する場合は以下の例のようにユーザーグループ「AdminUserGroup」を作成します。
(その後、IAMユーザー作成完了後に作成したユーザーに対してユーザーグループを設定します)

管理者権限を持ったIAMユーザーに請求—ボードへのアクセスを許可する場合は次のURLから設定を変更します

https://console.aws.amazon.com/billing/home#/account
( クリック後に画面の下の方までスクロールして、「AM ユーザー/ロールによる請求情報へのアクセス」を探します )

添付ファイル1
IAM-01.png ( 48.6 KBytes ) ダウンロード
添付ファイル2
IAM-01.png ( 25.9 KBytes ) ダウンロード
添付ファイル3
添付ファイル4
添付ファイル5
添付ファイル6
添付ファイル7
No.2334
10/22 09:55

edit

添付ファイル