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에서 안전 모드로 부팅하는 방법은 다음과 같습니다. 윈도우 설정을 엽니다. 단축키는 WIN+I입니다. 로 이동합니다. 복구 옵션의 고급 시작 옵션에 있는 ...

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

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

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

윈도우 11 / 작업 표시줄 / 왼쪽 정렬하는 방법

윈도우 11 / 작업 표시줄 / 왼쪽 정렬하는 방법

윈도우 11은 모바일 기기에서의 사용 편의성을 높였다고 한다. 다시 말하면 PC에서의 사용 편의성이 떨어졌다는 뜻. 여러 가지 개선이 있다고는 하지만 불편한 것도 많아졌다. 그 중 하나가 작업 표시줄 아이콘이 가운데에 있는 것. 윈도우 10에서는 작업 표시줄 아이콘이 왼쪽에 붙어 있었는데, 윈도우 11은 가운데에 모여있다. 모양은 좋은 듯 하지만 자꾸 마우스를 왼쪽으로 ...

윈도우 11 / 메모장 / 다크 모드 설정하는 방법

윈도우 11 / 메모장 / 다크 모드 설정하는 방법

많은 텍스트 에디터의 기본 테마가 다크 모드이다. 윈도우 11의 메모장도 다크 모드로 변경할 수 있다. 윈도우 11 자체를 다크 모드로 하면 메모장도 다크 모드가 되는데, 윈도우 11 테마는 그대로 둔 채 메모장만 다크 모드로 변경할 수 있다. 메모장을 열고 오른쪽 위의 설정 아이콘을 클릭한다. 앱 테마를 로 설정하면... 어두운 배경에 글자가 밝게 나오는... 다크 모드로 변경된다. 윈도우 ...

윈도우 10 / 시작 메뉴, 작업 표시줄에서 최근 사용한 파일 목록 지우는 방법

윈도우 10 / 시작 메뉴, 작업 표시줄에서 최근 사용한 파일 목록 지우는 방법

윈도우에서 파일을 사용하면 파일 탐색기의 에 나온다. 프로그램에서 마우스 우클릭해도 해당 프로그램이 사용한 파일 목록이 나온다. 보안, 사생활 보호 등의 이유로 이 목록이 보이지 않게 하고 싶다면... 설정을 연다.(단축키는 WIN+I) 을 클릭한다. 가 ...

윈도우 11 / 작업 표시줄 사라지는 문제 해결하는 방법

윈도우 11 / 작업 표시줄 사라지는 문제 해결하는 방법

윈도우 11에서 작업 표시줄이 사라지는 문제는 여러 가지 원인으로 발생할 수 있습니다. 다음은 이 문제를 해결하는 데 도움이 될 수 있는 몇 가지 방법입니다. 자동 숨김 설정 확인 작업 표시줄이 자동으로 숨겨지도록 설정되어 있는지 확인하세요. 작업 표시줄을 마우스 오른쪽 버튼으로 클릭합니다. 작업 표시줄 설정을 선택합니다. 작업 표시줄 동작에서 작업 표시줄 자동 숨기기 옵션이 켜져 있는지 ...

윈도우 11 / 저장소 풀, 저장소 공간으로 여러 개 디스크 하나로 합치는 방법

윈도우 11 / 저장소 풀, 저장소 공간으로 여러 개 디스크 하나로 합치는 방법

컴퓨터에 여분으로 갖고 있는 128GB 디스크 2개, 256GB 디스크 1개를 창착했다. 그대로 사용해도 되기는 한데, 작은 크기 여러 개보다는 큰 크기 한 개가 더 좋을 때가 있다. 어떻게 하면 3개의 디스크를 합해서 512GB로 사용할 수 있을까? 윈도우 11의 저장소 기능을 이용하면 가능하다. 순서는 다음과 같다. 저장소 풀 만들기 저장소 공간 만들기 볼륨 만들기 윈도우 11의 ...

윈도우 11 / 이모지(Emoji) 사용하는 방법

윈도우 11 / 이모지(Emoji) 사용하는 방법

이모지(Emoji)는 감정, 사물, 동작, 장소, 기호 등을 그림이나 아이콘으로 나타내는 문자입니다. 😃😂❤️✨ 같은 그림들이 바로 이모지입니다. 윈도우 11에서 이모지를 사용하는 방법은 다음과 같습니다.

윈도우 11 / Micorosft Teams / 삭제 또는 비활성화 하는 방법

윈도우 11 / Micorosft Teams / 삭제 또는 비활성화 하는 방법

윈도우 11을 설치하면 Micorosft Teams가 자동으로 설치된다. 마이크로소프트에서 제공하는 메신저 프로그램으로, 마이크로소프트 계정이 있으면 사용할 수 있다. 외국에서는 사용자가 많아지고 있다는데, 국내에서는 모르는 사람도 많고, 안다 해도 사용하는 사람이 별로 없는 듯 하다. 윈도우에 끼워 넣기 시작했으니, 앞으로는 많아질려나? 이 Microsoft Teams는 개인용으로, 기업에서 사용하는 Teams와는 좀 다르다. 기업용 팀즈를 설치하면 두 개의 ...

윈도우 10 / Windows.old 폴더 삭제하는 방법

윈도우 10 / Windows.old 폴더 삭제하는 방법

Windows.old 윈도우가 설치된 하드디스크를 보면 Windows.old라는 폴더가 있습니다. 윈도우 8 등 구버전에서 업그레이드 할 때, 윈도우 10을 업데이트할 때 만들어지는 폴더입니다. 구버전의 프로그램 정보를 담고 있는 폴더로, 현재 상태에 문제가 없어서 구버전으로 돌아갈 필요가 없다면, 필요 없는 폴더입니다. 만약 하드디스크의 용량이 부족하다면 Windows.old 폴더를 삭제해서 사용 가능한 디스크 용량을 늘릴 수 있습니다. Windows.old 폴더 ...