PowerShell / 메모

업그레이드

  • 버전 확인
PS C:\> $PSVersionTable

Name                           Value
----                           -----
PSVersion                      5.1.19041.3031
PSEdition                      Desktop
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}
BuildVersion                   10.0.19041.3031
CLRVersion                     4.0.30319.42000
WSManStackVersion              3.0
PSRemotingProtocolVersion      2.3
SerializationVersion           1.1.0.1
  • 최신 버전 확인
PS C:\> winget search Microsoft.PowerShell
이름               장치 ID                      버전    원본
---------------------------------------------------------------
PowerShell         Microsoft.PowerShell         7.3.6.0 winget
PowerShell Preview Microsoft.PowerShell.Preview 7.4.0.5 winget
  • 최신 버전 설치
winget install --id Microsoft.Powershell --source winget

도움말

  • 도움말 업데이트
Update-Help
  • Get-Help 명령어의 도움말
Get-Help -Name Get-Help

명령어 찾기

  • 모든 명령어 출력
Get-Command
  • 동사가 Get이면서 명사가 H로 시작하는 것 출력
Get-Command -Verb Get -Noun H*

보안 오류로 스크립트가 실행되지 않을 때

ExecutionPolicy의 값을 확인하고, Restricted라면 RemoteSigned로 변경해봅니다.

  • 값 확인
Get-ExecutionPolicy
  • 값 변경
Set-ExecutionPolicy RemoteSigned

주석

한 줄 주석

#을 추가한다. # 이후가 주석 처리된다.

여러 줄 주석

<#과 #>로 감싼다.

예제

현재 디렉토리 안의 폴더, 파일 크기 출력

Get-ChildItem | ForEach-Object {
    if ($_.PSIsContainer) {
        $size = (Get-ChildItem $_.FullName -Recurse -File -ErrorAction SilentlyContinue |
        Measure-Object Length -Sum).Sum
        [PSCustomObject]@{
            Name = $_.Name
            Type = "Folder"
            SizeMB = "{0:N2}" -f ($size / 1MB)
        }
    }
    else {
        [PSCustomObject]@{
            Name = $_.Name
            Type = "File"
            SizeMB = "{0:N2}" -f ($_.Length / 1MB)
        }
    }
} | Format-Table -AutoSize
Get-ChildItem | ForEach-Object {

    if ($_.PSIsContainer) {
        $size = (Get-ChildItem $_.FullName -Recurse -File -EA SilentlyContinue |
        Measure-Object Length -Sum).Sum
    }
    else {
        $size = $_.Length
    }

    [PSCustomObject]@{
        Name = $_.Name
        SizeBytes = $size
    }

} | Sort-Object SizeBytes -Descending | ForEach-Object {

    $size = $_.SizeBytes

    $display =
        if ($size -ge 1GB) {
            "{0:N2} GB" -f ($size / 1GB)
        }
        elseif ($size -ge 1MB) {
            "{0:N2} MB" -f ($size / 1MB)
        }
        elseif ($size -ge 1KB) {
            "{0:N2} KB" -f ($size / 1KB)
        }
        else {
            "$size Bytes"
        }

    [PSCustomObject]@{
        Name = $_.Name
        Size = $display
    }

} | Format-Table -AutoSize

기타

 

같은 카테고리의 다른 글
윈도우 10 / 파일 탐색기 / 파일 탐색기 실행하는 네 가지 방법

윈도우 10 / 파일 탐색기 / 파일 탐색기 실행하는 네 가지 방법

윈도우에 기본적으로 포함된 파일 관리 프로그램은 파일 탐색기입니다. 파일 탐색기를 여는 방법은 여러 가지가 있습니다. 자주 사용하는 프로그램이니 다양한 방법을 알고 있으면 편하겠죠? 파일 탐색기를 여는 네 가지 방법을 소개합니다.

윈도우 10 / 파일 탐색기 / 파일 확장자 표시하는 방법

윈도우 10 / 파일 탐색기 / 파일 확장자 표시하는 방법

파일 탐색기에서 파일을 보면, 확장자가 보이지 않아도 아이콘과 유형으로 어떤 파일인지 확인할 수 있습니다. 그럼에도 불구하고 파일 이름에 확장자가 있는 게 더 작업하기 좋다면 보이게 할 수 있습니다.

윈도우 / 명령어 / diskpart / 디스크 초기화하고 MBR 또는 GPT로 변경하는 방법

윈도우 / 명령어 / diskpart / 디스크 초기화하고 MBR 또는 GPT로 변경하는 방법

MBR과 GPT 하드디스크 파티션 스타일에는 MBR(마스터 부트 레코드)과 GPT(GUID 파티션 테이블)가 있다. MBR 스타일은 호환성이 좋으나 디스크를 2TB까지만 사용할 수 있다. 따라서 3TB 디스크를 MBR 스타일로 초기화하면 1TB는 사용할 수 없게 된다. GPT 스타일은 용량이 큰 디스크를 사용할 수 있지만, 구형 메인보드에서는 부팅 디스크로 사용할 수 없다. MBR을 GPT로, GPT를 MBR로 변경하기 위해서는 diskpart ...

윈도우 11 / 화상 키보드(가상 키보드) 사용하는 방법

윈도우 11 / 화상 키보드(가상 키보드) 사용하는 방법

화상 키보드는 터치스크린 장치나 키보드 사용이 어려운 환경에서 유용하게 사용할 수 있는 가상 키보드입니다. 화상 키보드는 실제 물리적인 키보드 대신 화면에 나타나는 키보드로, 마우스나 터치로 입력할 수 있습니다. 윈도우 11에서 화상 키보드를 사용하는 방법은 다음과 같습니다. 시작 버튼에 마우스를 올리고 우클릭합니다. 을 클릭합니다. 왼쪽에서 을 클릭합니다. 를 클릭합니다. 오른쪽에 있는 토글 버튼을 클릭하면... 화상 키보드가 ...

윈도우 11 / Clipchamp / 사진으로 동영상 만들기

윈도우 11 / Clipchamp / 사진으로 동영상 만들기

윈도우 11부터 Clipchamp라는 동영상 편집 프로그램이 탑재되었다. 이를 이용하여 사진으로 동영상을 만드는 방법을 알아본다. 윈도우 11에 포함된 사진 앱으로도 사진을 동영상으로 만들 수 있다. 사진 간 전환 효과는 줄 수 없으나, 사진이 이동하거나 확대/축소되는 효과를 줄 수 있다. 윈도우 11 / 사진 / 사진을 동영상으로 만드는 방법 Clipchamp 실행하기 Clipchamp를 클릭한다. 만약 없다면 Microsoft ...

윈도우 10 / Xbox Game Bar로 특정 창 동영상으로 녹화하는 방법

윈도우 10 / Xbox Game Bar로 특정 창 동영상으로 녹화하는 방법

예를 들어 엑셀 사용법에 대한 글을 적는다고 합시다. 화면을 캡처하고 텍스트를 넣어서 설명하는 방법도 있지만, 어떤 기능은 동영상으로 보여주는 게 더 효율적일 수 있습니다. 그런 경우 전체 화면이 아니라 엑셀이 실행되는 엑셀 창만 녹화하는 게 좋을 수 있는데요... 윈도우 10의 녹화 기능을 이용하면 쉽게 윈도우 녹화가 가능합니다. 단, 사용을 위해서는 기능을 활성화해야 ...

윈도우 11 / 환경 변수의 뜻과 확인하는 방법

윈도우 11 / 환경 변수의 뜻과 확인하는 방법

윈도우 11 환경 변수의 뜻과 확인 방법을 정리했습니다. 사용자 변수와 시스템 변수의 차이, PATH 환경 변수의 역할, 설정 화면에서 확인하는 방법, 명령 프롬프트와 PowerShell 명령어로 환경 변수를 확인하는 방법까지 쉽게 알아봅니다.

윈도우 11 / PowerToys / 사용법 / FancyZones

윈도우 11 / PowerToys / 사용법 / FancyZones

PowerToys의 FancyZones는 창을 배치를 도와주는 앱이다. 이다. 미리 정의된 레이아웃을 사용해도 되고, 새로 만들 수도 있다. 그리드 또는 캔버스 형식으로 만들 수 있고... 키보드와 마우스로 원하는 배치를 만들고 을 클릭한다. 레이아웃을 선택하면... 영역이 표시되고... Shift 키를 누른 채 창을 이동하면 그 영역에 배치된다. 더욱 자세한 사용법은 https://docs.microsoft.com/ko-kr/windows/powertoys/fancyzones에서 볼 수 있다.

윈도우 10 / 모니터 해상도 변경하는 방법

윈도우 10 / 모니터 해상도 변경하는 방법

윈도우 10을 설치할 때, 사용하는 모니터에 최적화된 값으로 해상도가 자동 설정됩니다. 만약 자동 설정된 해상도가 잘못 되었거나, 모니터 교체 등 여러 이유로 현재 해상도가 적절하지 않다면, 수동으로 해상도를 변경할 수 있습니다. 해상도 변경은 에서 합니다. 단축키 을 클릭합니다. 디스플레이 메뉴에 해상도가 있습니다. 원하는 해상도를 선택하면 바로 ...

윈도우 11 / 파일 탐색기 / 파일 탐색기 실행하는 네 가지 방법

윈도우 11 / 파일 탐색기 / 파일 탐색기 실행하는 네 가지 방법

윈도우 11의 기본 파일 관리 프로그램은 파일 탐색기입니다. 전문 프로그램보다는 기능이 적지만, 계속 개선되고 있습니다. 파일 탐색기를 여는 네 가지 방법을 소개합니다. 가장 편한 건 단축키입니다.