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 / 디스크 관리 / 디스크 추가하는 방법, 볼륨 만드는 방법, 볼륨 변경하는 방법

PC에 저장 공간이 부족하면 디스크를 추가한다. 외장 하드를 이용하는 방법도 있지만, 메인보드에 디스크를 붙이는 것이 좀 더 안정적이고 속도가 빠르다. 요즘 출시된 노트북은 디스크를 추가할 수 있는 여유 공간이 제공되는 것이 많아, 가벼운 SSD를 추가하면 저장 공간이 작다는 노트북의 단점이 사라진다. 디스크를 추가하면 몇 가지 작업이 필요한데, 윈도우 11에서 어떻게 하는지 ...

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

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

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

윈도우 10 / 원드라이브(OneDrive) / 저장 폴더 변경하는 방법

윈도우 10 / 원드라이브(OneDrive) / 저장 폴더 변경하는 방법

원드라이브는 마이크로소프트가 제공하는 클라우드 저장소입니다. 마이크로소프트 계정이 있으면 5G를 줍니다. 구글이 15G를 제공하는 것에 비하면 작은 용량이지만, 그래도 여러모로 활용할 수 있습니다. PC에 원드라이브 앱을 설치해서 클라우드와 PC를 동기화할 수 있는데, 기본 경로는 \Users\<username>\OneDrive입니다. 만약 이 경로가 마음에 들지 않는다면 다른 경로로 바꿀 수 있습니다. 원드라이브 아이콘을 클릭하고, 를 클릭한 후, ...

윈도우 11 / 폴더 아이콘 변경하는 방법

윈도우 11 / 폴더 아이콘 변경하는 방법

윈도우의 폴더 아이콘은 사용자가 파일과 하위 폴더를 쉽게 식별하고 접근할 수 있도록 시각적으로 나타내는 그래픽 이미지입니다. 기본적으로 윈도우 운영체제는 폴더를 노란색의 서류철 모양으로 표현하지만, 사용자가 원하는 이미지를 설정해 변경할 수 있습니다.

PowerShell / 메모

PowerShell / 메모

업그레이드 버전 확인 PS C:\> $PSVersionTable Name Value ---- ...

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

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

방화벽은 네트워크 간에 주고 받는 트래픽을 허용 또는 차단한다. Windows 10에도 기본적으로 방확벽이 있다. 그리고 활성화되어 있다. 특별한 이유가 없는 한 방화벽은 켜는 것이 좋다. 허용 또는 차단할 포트가 있다면 개별적으로 설정하는 것이 좋다. 만약 어떤 이유로 인해 방화벽 자체를 꺼야 한다면, 즉 모든 트래픽을 허용해야 한다면, 다음 두 가지 방법으로 할 ...

윈도우 10 / 시작프로그램 / 프로그램 등록하는 방법

윈도우 10 / 시작프로그램 / 프로그램 등록하는 방법

자주 사용하는 프로그램은 컴퓨터를 켬과 동시에 실행되도록 하는 것이 편합니다. 이렇듯 윈도우 부팅 시 자동으로 실행되는 프로그램을 시작프로그램이라고 하는데, 많은 소프트웨어가 설치할 때 시작프로그램에 등록됩니다. 금융 사이트 접속할 때 필요한 온갖 보안 프로그램이 대표적인 예입니다. 만약 자주 사용하는 프로그램인데 시작프로그램에 등록되어 있지 않다면 수동으로 등록시킬 수 있습니다. 레지스트리를 편집하는 방법과 시작프로그램 ...

윈도우 11 / PowerToys / 사용법 / Color Picker

윈도우 11 / PowerToys / 사용법 / Color Picker

모니터 화면에 있는 특정 색을 추출하는 프로그램을 보통 Color Picker라고 한다. Color Picker는 포토샵 등 여러 프로그램에 포함되어 있는데, PowerToys에도 포함되어 있다. 단축키는 이다. 형식은 HEX인데, 에서 변경할 수 있다. CMYK, RGB, HSB 등 여러 가지 형식에서 선택할 수 있다. 단축키 를 누르고 ...

윈도우 11 / 사진 / 사진을 동영상으로 만드는 방법

윈도우 11 / 사진 / 사진을 동영상으로 만드는 방법

윈도우 11에는 이미지를 보고 편집할 수 있는 사진이라는 앱이 있다. 이름은 사진이지만 동영상 편집도 가능하다. 사진 앱을 이용하면 사진들을 모아서 동영상을 만들 수 있다. 기능이 제한적이기는 하지만, 아주 쉽다. 사진 앱은 윈도우 10에도 포함되어 있다. 생김새는 약간 다르지만 사용법은 거의 비슷하다. 윈도우 10 / 사진 / 사진을 동영상으로 만드는 방법 윈도우 11에서는 동영상 편집기로 ...

윈도우 10 / 네트워크 드라이브 연결하는 방법, 연결 끊는 방법

윈도우 10 / 네트워크 드라이브 연결하는 방법, 연결 끊는 방법

공유된 폴더를 네트워크 드라이브로 연결하는 방법입니다. 윈도우 10에서 공유 폴더를 만드는 방법은 여기, 윈도우 서버에서 공유 폴더를 만드는 방법은 여기에 있습니다. 네트워크 드라이브 연결 공유된 폴더를 선택한 후 을 클릭합니다. 드라이브를 적절히 선택한 후 을 클릭하면... 드라이브가 만들어지고, 마치 자신의 PC에 있는 하드디스크처럼 사용할 수 있습니다. 네트워크 드라이브 연결 끊기 네트워크 드라이브를 선택하고 마우스 우클릭합니다. 를 ...