별칭이라는 AWS CLI 명령 단축키 생성 및 사용 - AWS Command Line Interface

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

별칭이라는 AWS CLI 명령 단축키 생성 및 사용

별칭은 자주 사용하는 명령이나 스크립트의 길이를 줄이기 위해 AWS Command Line Interface (AWS CLI) 에서 만들 수 있는 단축키입니다. 구성 폴더에 있는 alias 파일에서 별칭을 생성합니다.

사전 조건

별칭 명령을 사용하려면 다음을 완료해야 합니다.

1단계: 별칭 파일 생성

파일을 만들려면 alias 파일 탐색 및 텍스트 편집기를 사용하거나 절차를 사용하여 원하는 터미널을 사용할 수 있습니다. step-by-step 별칭 파일을 빠르게 생성하려면 다음 명령 블록을 사용합니다.

Linux and macOS
$ mkdir -p ~/.aws/cli $ echo '[toplevel]' > ~/.aws/cli/alias
Windows
C:\> md %USERPROFILE%\.aws\cli C:\> echo [toplevel] > %USERPROFILE%/.aws/cli/alias
별칭 파일을 생성하는 방법
  1. AWS CLI 구성 cli 폴더에 이름이 지정된 폴더를 생성합니다. 기본적으로 구성 폴더는 ~/.aws/(Linux 또는 macOS) 및 %USERPROFILE%\.aws\(Windows)에 있습니다. 파일 탐색을 통해 또는 다음 명령을 사용하여 생성할 수 있습니다.

    Linux and macOS
    $ mkdir -p ~/.aws/cli
    Windows
    C:\> md %USERPROFILE%\.aws\cli

    결과로 생성되는 cli 폴더의 기본 경로는 ~/.aws/cli/(Linux 또는 macOS) 및 %USERPROFILE%\.aws\cli(Windows)입니다.

  2. cli 폴더에서 확장자 없이 이름이 alias인 텍스트 파일을 생성하고 첫 번째 줄에 [toplevel]을 추가합니다. 원하는 텍스트 편집기를 통해 또는 다음 명령을 사용하여 이 파일을 생성할 수 있습니다.

    Linux and macOS
    $ echo '[toplevel]' > ~/.aws/cli/alias
    Windows
    C:\> echo [toplevel] > %USERPROFILE%/.aws/cli/alias

2단계: 별칭 생성

기본 명령이나 bash 스크립팅을 사용하여 별칭을 생성할 수 있습니다.

기본 명령 별명 생성

이전 단계에서 생성한 alias 파일에서 다음 구문을 사용해 명령을 추가하여 별칭을 생성할 수 있습니다.

구문

aliasname = command [--options]

The aliasname 그걸 별칭이라고 하죠. The command 호출하려는 명령으로, 다른 별칭을 포함할 수 있습니다. 별칭에 옵션 또는 파라미터를 포함하거나 별칭을 호출할 때 추가할 수 있습니다.

다음 예제에서는 aws sts get-caller-identity 명령을 사용하여 이름이 aws whoami인 별칭을 생성합니다. 이 별칭은 기존 AWS CLI 명령을 호출하므로 aws 접두사 없이 명령을 작성할 수 있습니다.

whoami = sts get-caller-identity

다음 예제에서는 이전 whoami 예제를 사용하여 Account 필터 및 텍스트 output 옵션을 추가합니다.

whoami2 = sts get-caller-identity --query Account --output text

하위 명령 별칭 만들기

참고

하위 명령 별칭 기능을 사용하려면 최소 AWS CLI 버전의 1.11.24 또는 2.0.0이 필요합니다.

이전 단계에서 생성한 alias 파일에서 다음 구문을 사용해 명령을 추가하여 하위 명령 별칭을 생성할 수 있습니다.

구문

[command commandGroup] aliasname = command [--options]

The commandGroup 명령 네임스페이스입니다. 예를 들어 명령은 명령 aws ec2 describe-regions 그룹 아래에 있습니다ec2. The aliasname 그걸 별칭이라고 하죠. The command 호출하려는 명령으로, 다른 별칭을 포함할 수 있습니다. 별칭에 옵션 또는 파라미터를 포함하거나 별칭을 호출할 때 추가할 수 있습니다.

다음 예제에서는 aws ec2 describe-regions 명령을 사용하여 이름이 aws ec2 regions인 별칭을 생성합니다. 이 별칭은 ec2 명령 네임스페이스 아래의 기존 AWS CLI 명령을 호출하므로 aws ec2 접두사 없이 명령을 작성할 수 있습니다.

[command ec2] regions = describe-regions --query Regions[].RegionName

명령 네임스페이스 외부의 명령에서 별칭을 만들려면 전체 명령 앞에 느낌표를 붙입니다. 다음 예제에서는 aws iam list-instance-profiles 명령을 사용하여 이름이 aws ec2 instance-profiles인 별칭을 생성합니다.

[command ec2] instance-profiles = !aws iam list-instance-profiles
참고

별칭은 기존 명령 네임스페이스만 사용하며 새 명령 네임스페이스를 만들 수 없습니다. 예를 들어 johnsmith 명령 네임스페이스가 이미 존재하지 않으므로 [command johnsmith] 섹션을 사용하여 별칭을 만들 수 없습니다.

bash 스크립팅 별칭 생성

주의

AWS CLI 별칭 bash 스크립트를 사용하려면 bash 호환 터미널을 사용해야 합니다.

다음 구문을 사용하여 고급 프로세스에 대한 bash 스크립트를 사용하여 별칭을 생성할 수 있습니다.

구문

aliasname = !f() { script content }; f

The aliasname 여러분이 별칭이라고 부르는 것이죠.script content 앨리어스를 호출할 때 실행하려는 스크립트입니다.

다음 예제에서는 opendns를 사용하여 현재 IP 주소를 출력합니다. 다른 별칭에서 별칭을 사용할 수 있으므로 다음 myip 별칭은 다른 별칭 내 IP 주소에 대한 액세스를 허용하거나 취소하는 데 유용합니다.

myip = !f() { dig +short myip.opendns.com @resolver1.opendns.com }; f

다음 스크립트 예제는 이전 aws myip 별칭을 호출하여 Amazon EC2 보안 그룹 수신에 대한 IP 주소를 승인합니다.

authorize-my-ip = !f() { ip=$(aws myip) aws ec2 authorize-security-group-ingress --group-id ${1} --cidr $ip/32 --protocol tcp --port 22 }; f

bash 스크립팅을 사용하는 별칭을 호출하면 변수는 항상 입력한 순서대로 전달됩니다. bash 스크립팅에서 변수 이름은 고려하지 않고 나타나는 순서만 고려합니다. 다음 textalert 별칭 예제에서 --message 옵션에 대한 변수는 첫 번째이고 --phone-number 옵션은 두 번째입니다.

textalert = !f() { aws sns publish --message "${1}" --phone-number ${2} }; f

3단계: 별칭 호출

alias 파일에서 생성한 별칭을 실행하려면 다음 구문을 사용합니다. 별칭을 호출할 때 추가 옵션을 추가할 수 있습니다.

구문

$ aws aliasname

다음 예제에서는 aws whoami 명령 별칭을 사용합니다.

$ aws whoami { "UserId": "A12BCD34E5FGHI6JKLM", "Account": "1234567890987", "Arn": "arn:aws:iam::1234567890987:user/userName" }

다음 예제에서는 aws whoami 별칭을 추가 옵션과 함께 사용하여 Account 출력에서 text 번호만 반환합니다.

$ aws whoami --query Account --output text 1234567890987

다음 예제에서는 aws ec2 regions 하위 명령 별칭을 사용합니다.

$ aws ec2 regions [ "ap-south-1", "eu-north-1", "eu-west-3", "eu-west-2", ...

bash 스크립팅 변수를 사용하여 별칭 호출

bash 스크립팅을 사용하는 별칭을 호출하면 변수는 입력한 순서대로 전달됩니다. bash 스크립팅에서 변수 이름은 고려하지 않고 나타나는 순서만 고려합니다. 예를 들어, 다음 textalert 별칭에서 --message 옵션에 대한 변수는 첫 번째이고 --phone-number는 두 번째입니다.

textalert = !f() { aws sns publish --message "${1}" --phone-number ${2} }; f

textalert 별칭을 호출할 때 별칭에서 실행되는 동일한 순서로 변수를 전달해야 합니다. 다음 예제에서는 $message$phone 변수를 사용합니다. $message 변수는 ${1} 옵션에서 --message(으)로 전달되고, $phone 변수는 ${2} 옵션에서 --phone-number(으)로 전달됩니다. 이렇게 하면 textalert 별칭을 호출하여 메시지를 보낼 수 있습니다.

$ aws textalert $message $phone { "MessageId": "1ab2cd3e4-fg56-7h89-i01j-2klmn34567" }

다음 예제에서는 $phone$message에 대한 별칭을 호출할 때 순서가 전환됩니다. $phone 변수는 ${1} 옵션에서 --message(으)로 전달되고, $message 변수는 ${2} 옵션에서 --phone-number(으)로 전달됩니다. 변수 순서가 잘못되었으므로 별칭이 변수를 잘못 전달합니다. 이 경우 $message 콘텐츠가 --phone-number 옵션의 전화번호 형식 요구 사항과 일치하지 않으므로 오류가 발생합니다.

$ aws textalert $phone $message usage: aws [options] <command> <subcommand> [<subcommand> ...] [parameters] To see help text, you can run: aws help aws <command> help aws <command> <subcommand> help Unknown options: text

별칭 리포지토리 예제

AWS CLI 별칭 GitHub리포지토리에는 개발자 팀과 커뮤니티에서 만든 AWS CLI 별칭 예제가 들어 있습니다 AWS CLI . 전체 alias 파일 예제를 사용하거나 직접 사용할 개별 별칭을 사용할 수 있습니다.

주의

이 섹션의 명령을 실행하면 기존 alias 파일이 삭제됩니다. 기존 별칭 파일을 덮어쓰지 않으려면 다운로드 위치를 변경합니다.

리포지토리에서 별칭을 사용하는 방법
  1. Git를 설치합니다. 설치 지침은 Git 설명서에서 Getting Started - Installing Git를 참조하세요.

  2. jp 명령을 설치합니다. jp 명령은 tostring 별칭에 사용됩니다. 설치 지침은 JMESPath(jp) README .md를 참조하십시오. GitHub

  3. jq 명령을 설치합니다. jq 명령은 tostring-with-jq 별칭에 사용됩니다. 설치 지침은 JSON프로세서 (jq) 를 참조하십시오. GitHub

  4. 다음 중 하나를 수행하여 alias 파일을 다운로드합니다.

    • 리포지토리에서 다운로드한 다음 명령을 실행하여 alias 파일을 구성 폴더에 복사합니다.

      Linux and macOS
      $ git clone https://github.com/awslabs/awscli-aliases.git $ mkdir -p ~/.aws/cli $ cp awscli-aliases/alias ~/.aws/cli/alias
      Windows
      C:\> git clone https://github.com/awslabs/awscli-aliases.git C:\> md %USERPROFILE%\.aws\cli C:\> copy awscli-aliases\alias %USERPROFILE%\.aws\cli
    • 저장소에서 직접 다운로드하여 AWS CLI 구성 cli 폴더의 폴더에 저장합니다. 기본적으로 구성 폴더는 ~/.aws/(Linux 또는 macOS) 및 %USERPROFILE%\.aws\(Windows)에 있습니다.

  5. 별칭이 작동하는지 확인하려면 다음 별칭을 실행합니다.

    $ aws whoami

    그러면 aws sts get-caller-identity 명령과 동일한 응답이 표시됩니다.

    { "Account": "012345678901", "UserId": "AIUAINBADX2VEG2TC6HD6", "Arn": "arn:aws:iam::012345678901:user/myuser" }

리소스