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 / Windows 설정 창을 여는 방법 두 가지

윈도우 10 / Windows 설정 창을 여는 방법 두 가지

윈도우 사용과 관련된 설정은 Windows 설정에서 합니다. Windows 설정 창을 여는 방법은 여러 가지가 있는데, 그 중 두 가지 방법을 소개해드리겠습니다. 윈도우 11 / 설정을 여는 세 가지 방법 단축키로 열기 를 누르면 설정 창이 열립니다. 시작 메뉴에서 열기 왼쪽 아래에 있는 시작 아이콘을 누르면 그 위에 톱니바퀴 모양의 설정 아이콘이 있습니다. 그 아이콘을 클릭하면 ...

윈도우 11 / 시스템 요구 사항

윈도우 11을 설치하려면 시스템 요구 사항을 만족해야 합니다. 만족하지 못하면 설치 자체를 할 수 없습니다. 그러한 컴퓨터라면 윈도우 10을 설치해야 합니다. 그런데 윈도우 10도 곧 EOS됩니다. 윈도우 10의 지원 종료(EOS)는 2025년 10월 14일로 예정되어 있습니다. 이 날짜 이후로 Microsoft는 윈도우 10에 대한 보안 업데이트나 기술 지원을 제공하지 않게 됩니다. 현재 사용 중인 ...

윈도우 10 / 알람 및 시계 / 알람, 시계, 타이머, 스톱워치 앱

윈도우 10 / 알람 및 시계 / 알람, 시계, 타이머, 스톱워치 앱

15분 동안 뭘 끓여야 합니다. 15분이 넘으면 탈 수 있으므로 시간을 재야 합니다. 스마트폰에 있는 시계 앱으로 타이머를 맞추다가, 윈도우에서 비슷한 기능의 앱이 있을 거 같아 찾아봤습니다. 컴퓨터로 작업하고 있을 때는 컴퓨터에서 모든 걸 해결하는 게 편하니까요. 역시나 있었습니다. 이름은 알람 및 시계. 윈도우 설치 시 자동으로 설치되는 앱인가 봅니다. 따로 ...

윈도우 10 / 공유 폴더 만드는 방법

윈도우 10 / 공유 폴더 만드는 방법

공유 폴더 만드는 방법 공유할 폴더를 선택하고 마우스 우클릭합니다. 팝업 메뉴에서 을 클릭합니다. 를 클릭합니다. 현재 로그인한 사용자가 소유자로, 공유 폴더에 접근 가능합니다. 다른 사용자를 추가하고 싶다면 선택 목록을 클릭합니다. 사용자를 선택하고, 추가한 다음... 역삼각형 아이콘을 클릭하여... 권한을 적절히 선택합니다. 를 클릭합니다. 적절히 선택합니다. 를 클릭해도 됩니다. 공유 설정이 완료되었습니다. 공유 폴더에 접근하는 방법 같은 네트워크 안에 있는 다른 PC에서 파일 ...

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

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

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

윈도우 11 / 마이크로소프트 계정 없이 로컬 계정으로 설치하는 방법

윈도우 11 / 마이크로소프트 계정 없이 로컬 계정으로 설치하는 방법

윈도우 11을 설치할 때 마이크로소프트 계정으로 로그인하라고 합니다. 예전에는 옵션이었는데, 점점 필수처럼 변해가고 있습니다. 인터넷 연결을 끊고 설치하면 인터넷에 연결하라고 합니다. 이를 해결하는 방법이 몇 가지 있는데, 가장 편한 것은... 컴퓨터를 인터넷에 연결을 하지 않습니다. Shift + F10을 누릅니다. 그려면 다음처럼 CMD 창이 뜹니다. oobe\bypassnro를 입력하고 엔터키를 누릅니다. 재부팅하고 다시 진행하는데, 이제는 이 ...

윈도우 / Hyper-V / 고급 세션 모드 켜는 방법, 끄는 방법

윈도우 / Hyper-V / 고급 세션 모드 켜는 방법, 끄는 방법

고급 세션 모드(Enhanced Session Mode)는 Hyper-V 가상 머신과 호스트 간의 더 풍부한 인터페이스와 장치 통합을 가능하게 해주는 기능입니다. 윈도우 11 프로 등의 Hyper-V는 기본적으로 활성화되어 있고, 윈도우 서버 2025 등에서는 기본적으로 비활성화되어 있습니다.

윈도우 PF 파일이란? Prefetch 폴더의 역할과 내용 확인 방법

윈도우 PF 파일이란? Prefetch 폴더의 역할과 내용 확인 방법

윈도우 Prefetch 폴더의 PF 파일이 무엇을 기록하는지, 내용을 확인하는 방법과 실행 흔적을 해석하거나 삭제할 때 주의할 점을 설명합니다.

윈도우 11 / 터미널 / 사용법 / SSH 접속하는 방법

윈도우 11 / 터미널 / 사용법 / SSH 접속하는 방법

SSH로 리눅스에 접속할 때 보통 Putty 같은 전용 프로그램을 사용합니다. 하지만 윈도우의 명령 프롬프트(CMD)나 파워쉘(PowerShell)에서도 SSH 접속이 가능합니다. SSH에 접속하는 방법, 터미널을 이용하여 접속 정보를 저장하는 방법을 알아봅니다. SSH 접속하는 방법 터미널을 실행하고, 명령 프롬프트 또는 Windows PowerShell을 엽니다. 예를 들어 192..168.3.245에 root 계정으로 접속하고 싶다면 다음과 같이 명령합니다. ssh root@192.168.3.245 암호를 입력하고 로그인합니다. SSH 포트가 22가 ...

윈도우 / 버전, 빌드 넘버 확인하는 5가지 방법

윈도우 / 버전, 빌드 넘버 확인하는 5가지 방법

윈도우 버전을 확인하는 방법은 여려 가지가 있습니다. 그 중 5가지 방법을 소개합니다. 윈도우 10이나 11뿐 아니라 윈도우 서버에서도 가능한 방법입니다. 방법 1 - 설정에서 확인 을 엽니다. 단축키는 WIN+I입니다. 을 클릭합니다. 왼쪽에서 를 클릭하면, 오른쪽에서 버전을 확인할 수 있습니다. 방법 2 - Windows 정보 실행 창을 엽니다. 단축키는 WIN+R입니다. winver를 입력하고 엔터키를 누르거나 을 클릭합니다. 창이 ...