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

기타

 

같은 카테고리의 다른 글
윈도우 11 / 배경 화면, 잠금 화면 변경하는 방법

윈도우 11 / 배경 화면, 잠금 화면 변경하는 방법

윈도우 11 배경화면은 사용자 컴퓨터의 바탕화면에 표시되는 이미지 또는 색상을 말합니다. 배경화면은 사용자 환경의 시각적 경험을 개인화하고, 더 나아가 심미적 만족감을 제공하는 요소 중 하나입니다. 잠금 화면은 컴퓨터가 잠금 상태일 때 사용자에게 표시되는 화면입니다. 이는 시스템 보안을 강화하고 개인 정보를 보호하기 위한 기능 중 하나입니다.

윈도우 11 / 파일 탐색기 / 원드라이브(OneDrive) 바로 가기 삭제하는 방법

윈도우 11 / 파일 탐색기 / 원드라이브(OneDrive) 바로 가기 삭제하는 방법

원드라이브는 마이크로소프트에서 제공하는 클라우드 저장소입니다. 그래서 윈도우를 설치하면 원드라이브로 같이 설치되고, 원드라이브를 사용하지 않아도 파일 탐색기에 원드라이브 바로 가기가 생깁니다. 원드라이브를 사용하지 않는다면 이 바로 가기가 많이 거슬리는데, 이를 제거하려면 레지스트리를 건드려야 합니다.

윈도우 11 / 설정을 여는 세 가지 방법

윈도우 11 / 설정을 여는 세 가지 방법

윈도우에서 작업을 하다 보면 설정을 변경해야 할 때가 있다. 설정을 여는 세 가지 방법을 소개한다. 어떤 설정은 제어판에서 작업하는 게 편하다.  윈도우 11 / 제어판 여는 방법, 바탕화면에 추가하는 방법 방법 1 시작 버튼을 클릭한다. 을 클릭한다. 만약 시작 메뉴에 없다면, 모든 앱에서 찾을 수 있다. 시작 화면에 고정 또는 작업 표시줄에 고정을 할 수 있다. 방법 2 시작 ...

윈도우 11 / 디스크 관리 / 스팬 볼륨 만드는 방법

윈도우 11 / 디스크 관리 / 스팬 볼륨 만드는 방법

256GB 디스크 두 개 있는 것과 512GB 디스크 한 개 있는 것은, 총 크기는 같지만 다른 점이 있습니다. 전자의 경우는 300GB 크기의 파일을 저장할 수 없습니다. 런 경우 스팬 볼륨을 이용하여 256GB 디스크 두 개를 묶어서 하나처럼 사용할 수 있습니다.

윈도우 11 / 방화벽 해제하는 방법

윈도우 11 / 방화벽 해제하는 방법

윈도우 11에서 방화벽을 해제하는 방법 두 가지를 소개한다. 윈도우 10에서의 방법과 거의 같다. 방화벽을 해제하면 모든 트래픽을 주고 받는다. 보안에 좋지 않으므로, 특별한 경우가 아니면 해제하지 않는 것이 좋다. 만약 허용하려는 포트가 있다면 개별적으로 열어준다. 방법 1 - 설정 설정을 연다.(윈도우 11 설정을 여는 세 가지 방법) 을 클릭한다. 을 클릭한다. [방화벽 ...

윈도우 10 / ISO 파일 열고 사용하는 방법

윈도우 10 / ISO 파일 열고 사용하는 방법

ISO 파일은 CD 또는 DVD를 하나의 파일로 만든 것이다. Virtual DVD 같은 가상 드라이브 프로그램으로 마운트하여 일반 CD처럼 사용할 수 있다. 만약 윈도우 10을 사용하고 있다면, 별도의 소프트웨어를 설치할 필요 없이 윈도우에 포함된 기능으로 ISO 파일을 열고 닫을 수 있다. ISO 파일 열기 ISO 파일에 마우스를 올리고 우클릭한다. 팝업메뉴에서 를 클릭한다. 마치 CD를 넣은 것처럼 ...

윈도우 10 / PC용 구글 드라이브 설치하는 방법

윈도우 10 / PC용 구글 드라이브 설치하는 방법

PC용 구글 드라이브를 설치하면, PC의 파일을 구글 드라이브에, 구글 드라이브의 파일을 PC에 동기화(백업) 할 수 있습니다. 내 개인 자료가 클라우드에 있는 것이 싫어서 PC의 파일을 구글 드라이브에 올리지는 않지만, 구글 드라이브에 있는 자료를 내 PC로 옮길 때는 PC용 구글 드라이브가 편합니다. 스마트폰으로 찍은 사진을 구글 포토에 백업하고 있다면, 구글 포토에서 구글 ...

윈도우 11 / 파일 탐색기 / 분류 없애는 방법

윈도우 11 / 파일 탐색기 / 분류 없애는 방법

파일 탐색기에는 정렬과 분류 기능이 있습니다. 정렬은 목록에 표시된 파일·폴더의 순서를 바꾸는 기능이고, 분류는 그룹화하는 기능입니다. 예를 들어 분류 기준을 수정한 날짜, 정렬 기준을 이름으로 하면, 날짜 기준으로 그룹화되고 그 안에서 이름을 기준으로 정렬합니다. 만약 분류가 불편하다면 다음과 같은 방법으로 해제할 수 있습니다.

윈도우 11 / 디스크 공간 확보하는 방법

윈도우 11 / 디스크 공간 확보하는 방법

윈도우 11을 사용하다 보면 디스크 공간이 부족해지는 상황을 겪을 수 있습니다. 이럴 때 불필요한 파일을 정리하고, 시스템을 최적화하는 것이 중요합니다. 윈도우에는 기본적으로 디스크 정리 도구가 내장되어 있어 불필요한 파일을 쉽게 삭제할 수 있습니다.

윈도우 / Hyper-V / 가상 머신 1세대와 2세대 차이

윈도우 / Hyper-V / 가상 머신 1세대와 2세대 차이

Hyper-V에서 가상 컴퓨터를 만들 때 1세대와 2세대애서 선택하게 되어 있습니다. 1세대(Generation 1)와 2세대(Generation 2)는 가상 머신의 펌웨어 및 부트 방식, 하드웨어 기능 지원 방식에 차이가 있습니다.