[AWS]/ROG

[AWS] [활용] SSM & PowerShell 파워쉘 사용 방법

SAMSUNG CLOUD-OKY 2022. 4. 14. 13:41
반응형

 

## SSM 활용하여 대량서버 관리

 

 


[성공]
powershell -ExecutionPolicy ByPass "& aws s3 ls s3://버킷명/; aws s3 cp s3://버킷명/upload/Server.exe d:; d:; ./test.bat;"  

[성공]
powershell -ExecutionPolicy ByPass -NoExit "& aws s3 ls s3://버킷명/; aws s3 cp s3://버킷명/Server.exe d:; d:; ./test.bat;"  


[성공]
powershell -ExecutionPolicy ByPass -NoExit "& aws s3 ls s3://버킷명/;"  


[성공]
powershell -ExecutionPolicy ByPass -NoExit "& d:; ./test.bat;" 

[성공]
powershell -ExecutionPolicy ByPass -NoExit "& d:; ./test;"   

[성공]
powershell -ExecutionPolicy ByPass "& d:; ./test;"     

[실패]
powershell -ExecutionPolicy ByPass "& d:; test;"      

 

 

# 드라이브 별도 지정
[실패]
powershell -ExecutionPolicy ByPass "test;"            d:\    

[성공]
powershell -ExecutionPolicy ByPass "./test;"          d:\   

 

 

 

 

 

 

## S3명령어

https://docs.aws.amazon.com/ko_kr/cli/latest/userguide/cli-services-s3-commands.html

 

 

AWS CLI에서 상위 수준(s3) 명령 사용 - AWS Command Line Interface

PowerShell을 사용하는 경우 셸은 CRLF의 인코딩을 변경하거나, 파이프 입력이나 출력 또는 리디렉션된 출력에 CRLF를 추가할 수 있습니다.

docs.aws.amazon.com

 

 

=======================================================

 

 

 

 

## Windows Powershell 명령어를 바로가기로 구현하기

 인공지능을 Windows에서 다루기 위해 Anaconda를 설치하여 Windows에서도 Python을 사용할 수 있는 기회가 많아지고 있습니다. 그러다보니 자연스레 Ubuntu에서처럼 미리 작성된 스크립트를 바로 실행시켜보고자 하는 방법을 알아보게 되었습니다.

 마침 Windows Powershell에서 이와 같은 기능을 사용할 수 있을 것으로 보여 방법을 찾아보았습니다. 혹시나 해당 방법을 필요로 하시는 분들을 위해 방법을 공유해드리겠습니다.

 

1. Powershell 바로가기 만들기

 바탕화면에 Powershell 바로가기를 만드는 방법은 두 가지 경우가 있습니다.

 

방법1: 바로가기 복사하기

 

시작버튼 오른쪽에 위치한 돋보기 버튼을 클릭하여 'powershell'이라고 검색하면 아래와 같은 화면을 보실 수 있습니다.

 

'Windows Powershell' 메뉴에 마우스 오른쪽 버튼을 클릭한 다음 '파일 위치 열기'를 클릭합니다.

 

 위와 같은 PowerShell 바로가기 아이콘들을 볼 수 있습니다. 이 중 제일 아래의 것을 복사하여 원하는 위치에 붙여넣기를 해주면 됩니다.

 

방법2: 직접 바로가기 생성

 

 바로가기를 두고싶은 폴더 혹은 바탕화면에서 오른쪽 버튼을 클릭하신 후 '새로 만들기(W)' → '바로 가기(S)'를 선택합니다.

 바로 가기 만들기의 항목 위치 입력(T)에 다음과 같은 주소를 입력한 후 다음(N) 버튼을 눌러주세요.

 %SystemRoot%\system32\WindowsPowerShell\v1.0\powershell.exe

 

 바로가기의 이름을 지정합니다. 이 이름은 PowerShell 창을 열었을 때 창의 제목이 됩니다.

 

 위와 같은 과정을 통해 두 가지의 PowerShell 바로가기를 생성하였습니다. 만약 PowerShell을 실행하자마자 원하는 폴더 경로에 PowerShell을 시작하고 싶으시다면 바로가기의 속성을 변경해줍니다.

 

 2. PowerShell 실행 위치 설정

 

 속성에서 '바로 가기' 탭을 선택해 시작 위치(S)에 PowerShell이 시작되었을 때 위치를 설정해줍니다. 위와 같이 설정하실 경우 PowerShell이 실행되자마자 바탕화면에서 PowerShell이 시작됩니다.

 3. PowerShell 스크립트 작성하기

  지금부터 PowerShell 명령어를 바로 실행할 수 있는 스크립트를 만들어보도록 하겠습니다. PowerShell이 실행되는 스크립드를 메모장으로 다음과 같이 작성하였습니다.

 

 

 

powershell -ExecutionPolicy ByPase -NoExit -Command "& winver;"

 

여기서 명령어 내용에 대해 간단하게 분석해드리자면

powershell: PowerSehll을 실행합니다.

-ExecutionPolicy: Script 실행 정책을 정의합니다. ByPass를 설정함으로서 직접 입력하지 않아도 해당 명령어를 사용할 수 있도록 해줍니다.

-NoExit: PowerShell 수행이 종료되거나 오류가 발생하더라도 창이 저절로 꺼지지 않게 해줍니다.

-Command: PowerShell에서 수행하고자 하는 명령어를 입력해줍니다. Enter로 나누어지는 명령의 경우 세미콜론(;)으로 구분해줍니다. 양식은 "& 명령어; 명령어;" 식으로 입력해줍니다.

 4. 스크립트를 바로가기로 연결하기

 다음으로 PowerShell의 바로가기를 수정하여 스크립트가 바로 실행될 수 있도록 설정해줍니다. 해당 바로가기의 속성에서 다음과 같이 수정해줍니다.

 대상(T) 부분에 다음과 같은 내용을 추가하여 example.ps1 스크립트가 실행될 수 있도록 설정합니다.

 %SystemRoot%\system32\WindowsPowerShell\v1.0\powershell.exe -ExecutionPolicy ByPass ".\example.ps1"

 

 위와 같이 설정된 PowerShell 바로가기를 실행하면 설정된 명령어가 바로 실행됨을 확인하실 수 있습니다.



 

 

 

 

 

 

참조 : 

https://elecs.tistory.com/385

 

반응형