반응형

AWS tool for PowerShell을 설치하는 방법 공유 드립니다.

 

Step 1. 가장 먼저 관리자 권한으로 powershell을 실행해야 합니다

 

 

Step 2. 백신이 실행중이라면 실시간 검사 모드를 꺼야합니다

저 같은 경우 노트북에서 진행한 결과 백신에서 설치 파일을 차단하여 정상 설치가 되지 않았습니다

 

Step 3. 설치 명령어 입력

PS> Install-Module -Name AWSPowerShell

설치 시간은 생각보다 오래걸립니다. 약 10~20분 정도의 여유를 가지고 기다리시면 설치가 완료됩니다.

 

Step 4. 설치 확인 명령어 입력

PS> Get-AWSPowerShellVersion

설치가 완료되면 버전확인가 같은 명령어로 설치 확인을 진행할 수 있습니다.

아래 이미지와 같이 버전 정보가 잘 나타나면 정상 설치가 된것입니다.

 

더욱 자세한 사항 또는 다른 설치 방법은 아래 AWS Tools for PowerShell 페이지에 나와있습니다.

URL : https://docs.aws.amazon.com/ko_kr/powershell/latest/userguide/pstools-getting-set-up-windows.html

 

Windows에 AWS Tools for PowerShell 설치 - AWS Tools for PowerShell

수행해야 하는 작업에서 요구하는 경우를 제외하고 승격된 권한을 가진 관리자로 PowerShell을 실행하지 않는 것이 좋습니다. 이는 잠재적 보안 위험 때문이며 최소 권한의 원칙과 일치하지 않습

docs.aws.amazon.com

 

내용이 유용하셨다면 좋아요&댓글 부탁드립니다.
이 블로그를 이끌어갈 수 있는 강력한 힘입니다!

caul334@gmail.com

반응형
반응형

오늘은 지난 시간에 이어서 파워쉘 스크립트를 이용하여 특정 폴더 내에 있는 영상 파일들을

한꺼번에 바꿀 수 있는 자동화 된 스크립트를 공유드리겠습니다.

 

방법은 먼저 특정 폴더를 지정하여 동영상 파일들을 복사하여 넣어줍니다.

저는 바탕화면 하위에 있는 "1212"라는 폴더에 동영상 파일들을 넣었습니다.

파워쉘 스크립트 실행 전 파일명

 

파일들을 다 넣었으면 스크립트를 실행합니다.

참고로 파워쉘 스크립트와 ExifTool(exe 실행파일은) 바탕화면에 위치 시키고 스크립트를 실행했습니다.

 

ExifTool에 대한 전반적인 내용은 이전 포스팅에서 참고하시면 됩니다.

https://betterinvesting.tistory.com/291

 

[PowerShell] 파워쉘을 이용하여 동영상 파일 이름을 생성시간으로 변경하는 방법 - 1

가족들의 사진과 동영상을 백업하던 중 사진과 동영상 파일들 이름이 뒤죽박죽이여서 날짜별로 정리가 필요했습니다. 이미지 사진 파일은 PYTHON 프로그램을 만들어서 이름을 변경

betterinvesting.tistory.com

 

스크립트를 실행하면 스크립트에 지정된 폴더(ex, 1212) 하위에 있는 모든 동영상 파일에 생성날짜를 읽어들여서

기존 파일 이름.MOV -> 생성날짜_시간.MOV 으로 변경하여 줍니다.

파워쉘 스크립트 실행 화면

 

스크립트가 다 실행되면 아래 사진과 같이

파일 이름들이 생성날짜_생성시간.<확장자> 형식으로 변경되게 됩니다.

파워쉘 스크립트 실행 후 파일명

 

 

자동화된 스크립트는 아래에서 공유드리겠습니다.

이 스크립트는 제가 실제로 실행하였던 스크립트이니 상황에 맞게 수정하여서 사용하시면 됩니다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# 영상파일 경로로 이동
cd C:\Users\nick\Desktop\1212
 
# 현재 경로 확보
$pwd = Get-Location | foreach {$_.Path}
 
# 파일명 리스트 확보
$movie_list = Get-ChildItem . *.M* | foreach {$_.Name}
 
foreach($movie in $movie_list){
    echo $movie
    $file_abs = $pwd+'\'+$movie
    
    # 파일 확장자
    $ext = [System.IO.Path]::GetExtension($movie)
    
    # 파일 생성일 확보
    $c_date = C:\Users\nick\PycharmProjects\picture_name_collector\exiftool.exe $file_abs | findstr /R ^Creation
  
    
    # 파일명 수정
    $name = $c_date.Substring(34,19).replace(':', '').replace(' ','_')
    
    # 파일 이름 수정 부분
    $new_name = $name+$ext
    echo $new_name
    Rename-Item -Path $file_abs -NewName $new_name
}
 
# 이전 경로로 이동
cd ..\
cs

 

내용이 유용하셨다면 좋아요&댓글 부탁드립니다.
이 블로그를 이끌어갈 수 있는 강력한 힘입니다!

caul334@gmail.com

 

 

반응형
반응형

 

가족들의 사진과 동영상을 백업하던 중 사진과 동영상 파일들 이름이 뒤죽박죽이여서 날짜별로 정리가 필요했습니다.

이미지 사진 파일은 PYTHON 프로그램을 만들어서 이름을 변경했는데 문제는 동영상 파일의 이름을 수정하는 것이였습니다.

 

* 참고로 Python 프로그램을 이용하여 사진 이미지 파일의 이름을 수정하는 방법은 다음 포스팅에서 따로 다루도록 하겠습니다.

 

동영상 파일은 Python 프로그램을 통해서 해결할 수 없기 때문에

윈도우 PowerShell 스크립트를 통해 해결했습니다.

 

이제 단계별로 파일이름을 자동으로 수정하는 방법을 설명드리겠습니다.

 

 

  Step 1. EXIFTool 다운로드

 

동영상 파일의 생성날짜를 알기 위해서는 동영상 파일의 Meta 데이터에 접근해야 하는데

그 정보를 얻기 위해선 exiftool 프로그램을 통해 정보를 확인할 수 있습니다. 

 

아래 다운로드 경로에 exiftool 프로그램을 다운받습니다.

다운로드URL : https://exiftool.org/

 

 

 

  Step 2. PowerShell을 통해 생성날짜 필터링

 

다운을 받고 난 후, 아래 사진과 같이 명령어를 입력하면 동영상의 자세한 정보를 확인할 수 있습니다.  

명령어: exiftool.exe <동영상파일>

 

저희가 관심있는 것은 동영상 파일의 생성 시간이기 때문에 동영상 파일의 생성 시간만 필터링 하여 보겠습니다.

필터링 명령어 뒤에 " | findstr /R ^Creation" 를 입력하면 해당 동영상 파일의 생성시간만 추출할 수 있습니다.

 

이 생성시간을 변수로 입력받아 문자열 파싱(Parsing)을 하면 원하는 형식으로 파일명을 지정할 수 있습니다.

여기서 부터 어려운 얘기가 시작되죠?

간략하게 아래 스크립트를 참고하여 복사 붙여넣기 하면 됩니다.

 

 

  파일 이름 변경을 위한 PowerShell 스크립트

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# 영상 파일 경로로 이동
cd C:\Users\nick\Desktop\2020_01
 
# 현재 경로 확보
$pwd = Get-Location | foreach {$_.Path}
 
# 파일명 확보
$movie = "IMG_8638.MOV"
 
# 파일 절대 경로
$file_abs = $pwd+'\'+$movie
 
# 파일 확장자
$ext = [System.IO.Path]::GetExtension($movie)
 
# 파일 생성일 확보
$c_date = C:\Users\nick\Desktop\exiftool.exe $file_abs | findstr /R ^Creation
 
# 파일명 형식 지정
$name = $c_date.Substring(34,19).replace(':', '').replace(' ','_')
 
# 파일 이름 수정 부분
$new_name = $name+$ext
Rename-Item -Path $file_abs -NewName $new_name
 
# 바뀐 파일 출력
echo $new_name
cs

 

위 스크립트를 실행해보겠습니다.

 

 

  Step 3. 스크립트 실행

 

먼저 스크립트를 실행하기 전에 파일명을 확인해 보면 IMG_8638.MOV 입니다.

 

 

위 공유해드린 스크립트를 실행해보겠습니다.

윈도우 파워쉘을 실행하여 위 스크립트를 입력합니다.

 

스크립트 실행 결과

다음과 같이 파일이름이 "<생성날짜>_<생성시간>.MOV" 형식으로 변경되었습니다.

 

 

다음 포스팅에서는 이 스크립트를 이용하여 특정 폴더 내에 있는 영상 파일들을

한꺼번에 바꿀 수 있는 자동화 된 스크립트를 공유드리겠습니다.

 

내용이 유용하셨다면 좋아요&댓글 부탁드립니다.
이 블로그를 이끌어갈 수 있는 강력한 힘입니다!

caul334@gmail.com

 

 

반응형
반응형

파워쉘 스크립트를 실행하는 방법에 대해 말씀드리겠습니다.

윈도우는 기본적으로 파워쉘 스크립트를 실행하지 못하게 막아놓았습니다.

 

때문에 스크립트를 실행하려면 기본 PowerShell 실행 정책을 변경해야 합니다.

기본 실행 정책인 Restricted는 로컬 컴퓨터에 쓰는 스크립트를 포함하여 모든 스크립트가 실행되지 않도록 합니다.

 

  현재 PowerShell 실행 정책 확인 명령어

1
Get-ExecutionPolicy -List
cs

 

 

  스크립트(.ps1) 실행 정책 변경 방법

스크립트(.ps1)를 실행하기 위해서

현재 정책인 Restricted를 -> RemoteSigned 또는 AllSigned 로 바꾸면 스크립트를 실행 할 수 있습니다.

1
2
3
4
5
6
7
8
9
10
### 스크립트 실행 정책 변경 ###
1. 관리자 권한으로 PowerShell 실행
 
2. Set-ExecutionPolicy RemoteSigned
3. Y 입력
 
# 위 방법이 안되면 아래 명령어 실행
 
2-1. Set-ExecutionPolicy AllSigned
3-1. Y 입력
cs

 

Step 1. 관리자 권한으로 Power Shell 실행

 

 

Step 2. Set-ExecutionPolicy 명령으로 기본 정책 변경

Set-ExecutionPolicy RemoteSigned 명령어를 입력 후 Y를 입력하시면 됩니다.

*위 방법으로 스크립트가 실행되지 않을 때에는 Set-ExecutionPolicy AllSigned 명령으로 재시도 해보시기 바랍니다.

 

 

Step 3. 스크립트 실행 확인

기본 실행 정책을 변경한 후 기존에 실행되지 않았던 스크립트를 실행하여 봅니다.

 

 

내용이 유용하셨다면 좋아요&댓글 부탁드립니다.
이 블로그를 이끌어갈 수 있는 강력한 힘입니다!

caul334@gmail.com

 

 

[참고 자료]

https://docs.microsoft.com/ko-kr/powershell/module/microsoft.powershell.core/about/about_scripts?view=powershell-7.2 

 

스크립트 정보 - PowerShell

PowerShell에서 스크립트를 실행하고 작성하는 방법을 설명합니다.

docs.microsoft.com

https://docs.microsoft.com/ko-kr/powershell/module/microsoft.powershell.core/about/about_execution_policies?view=powershell-7.2 

 

실행 정책 정보 - PowerShell

PowerShell 실행 정책을 설명하고 이를 관리하는 방법을 설명합니다.

docs.microsoft.com

 

반응형

+ Recent posts