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 / 명령 프롬프트(CMD) / 항상 관리자 권한으로 실행하는 방법

윈도우 10 / 명령 프롬프트(CMD) / 항상 관리자 권한으로 실행하는 방법

명령 프롬프트(CMD)를 관리자 권한으로 실행하는 경우가 많다면, 아예 항상 관리자 권한으로 실행되도록 설정할 수 있다. 아래는 윈도우 10 기준인데, 윈도우 11, 윈도우 서버도 방법은 같다. cmd로 검색하고 를 클릭한다. 을 클릭한다. 을 클릭한다. 을 클릭하여 설정을 저장한다.

윈도우 / 로그온 시도나 암호 변경 시도를 너무 많이 했기 때문에 보안을 위해 사용자 계정이 잠겼습니다

윈도우 / 로그온 시도나 암호 변경 시도를 너무 많이 했기 때문에 보안을 위해 사용자 계정이 잠겼습니다

집에서 사무실 컴퓨터에 원격 데스크톱으로 접속하여 작업할 때가 있다. 오랫동안 잘 사용했는데, 최근 들어 아래와 같은 메시지가 나오면서 연결이 되지 않을 때가 있다. 로그온 시도나 암호 변경 시도를 너무 많이 했기 때문에 보안을 위해 사용자 계정이 잠겼습니다. 잠시 기다렸다가 다시 시도하거나 시스템 관리자나 기술 지원 서비스에 문의하십시오. 로그온 실패가 많아서 계정을 잠가버린 ...

윈도우 / 안전 모드

윈도우의 안전 모드(Safe Mode)는 운영 체제에서 문제가 발생했을 때 이를 진단하고 해결하기 위한 특별한 부팅 옵션입니다. 안전 모드에서는 윈도우가 기본적인 파일과 드라이버만 로드하며, 문제의 원인을 찾고 수정하는 데 유리한 환경을 제공합니다. 안전 모드에서는 비필수적인 소프트웨어와 드라이버는 실행되지 않으므로, 충돌 문제나 시스템 오류를 최소화할 수 있습니다. 안전 모드의 주요 기능과 목적 필수적인 기능만 ...

윈도우 11 / 내 컴퓨터 CPU 종류 확인하는 세 가지 방법

윈도우 11 / 내 컴퓨터 CPU 종류 확인하는 세 가지 방법

컴퓨터를 업그레이드하거나 특정 프로그램을 설치하기 전에, 내 컴퓨터에 어떤 CPU가 탑재되어 있는지 확인해야 할 때가 있습니다. 윈도우에서 CPU 정보를 확인하는 방법은 여러 가지가 있는데, 별도의 프로그램을 설치하지 않고도 할 수 있는 방법 세 가지를 소개해드립니다.

윈도우 10 / 터치 패드 끄는 방법

윈도우 10 / 터치 패드 끄는 방법

노트북에 키보드와 마우스를 연결하고 사용할 때, 터치 패드가 작동하면 불편할 수 있다. 노트북에서 펑션 키를 제공하면 그 키로 비활성화하면 되고, 그렇지 않다면 설정에서 끌 수 있다. 설정을 연다.(단축키는 WIN+I) 를 클릭한다. 왼쪽에서 를 클릭하고, 오른쪽에서 설정한다. 터치 패드 밑에 있는 토글 버튼으로 켜거나 끌 수 있다. 켠 상태에서 의 ...

윈도우 10 / 날씨 앱 / 내 위치 설정하기

윈도우 10 / 날씨 앱 / 내 위치 설정하기

윈도우 10에는 날씨 앱이 있습니다. 특정 지역의 날씨를 알려주는 앱입니다. 그런데 그 지역이 내가 있는 지역과 맞지 않을 수 있습니다. 보통 서울로 설정되어 있는 거 같습니다. GPS가 없는 데스크톱이라면 지역을 수동으로 설정해서 사용합니다. 날씨 앱을 엽니다. 현재 위치를 검색한 후 을 클릭합니다. 이제 내 위치에 딱 맞는 날씨를 볼 수 있습니다.

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

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

윈도우를 사용하다 보면 파일 확장자가 필요할 때가 있습니다. 그런데, 윈도우 기본 설정 하에서는 파일 탐색기에서 확장자가 보이지 않습니다. 확장자 정보가 자주 필요하다면 파일 확장자가 보이도록 설정을 변경할 수 있습니다. 파일 확장자는 파일 이름 끝에 붙는 ‘.txt’, ‘.jpg’, ‘.exe’ 같은 문자로, 해당 파일의 형식을 나타냅니다. 예를 들어 document.docx는 워드 문서, photo.jpg는 이미지 파일, ...

윈도우 10 / 시작 메뉴에 폴더 추가하는 방법

윈도우 10 / 시작 메뉴에 폴더 추가하는 방법

윈도우 10에서 왼쪽 밑에 있는 시작 버튼을 클릭하면 시작 메뉴와 화면이 주욱 올라옵니다. 설치한 앱과 프로그램 목록이 있고, 자주 사용하는 프로그램은 시작 화면에 등록해둘 수 있죠. 시작 메뉴의 왼쪽에는 전원, 설정 등의 아이콘이 있는데 공간에 비해 아이콘이 몇 개 없습니다. 좀 허전하죠? 그 곳에 자주 접근하는 폴더를 등록해놓고 활용할 수 있습니다. [Win + ...

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

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

윈도우의 여러 설정이 으로 옮겨지고 있다. 이제는 제어판보다 설정을 더 많이 사용하는 거 같다. 윈도우 설정을 여는 세 가지 방법을 소개한다. 윈도우 10 / 제어판을 여는 세 가지 방법, 바탕화면에 추가하는 방법 방법 1 가장 기억하기 쉬운 방법이다. 그러나 메뉴를 찾기 위해 스크롤을 해야 한다. 시작 버튼을 클릭하여 시작 메뉴를 연다. 을 클릭한다. 시작 화면에 고정하거나 ...

윈도우 10 / 명령 프롬프트(CMD) 글꼴 변경하는 방법

윈도우 10 / 명령 프롬프트(CMD) 글꼴 변경하는 방법

윈도우 10 명령 프롬프트(CMD)의 기본 글꼴은 굴림체입니다. 고정폭이기는 하나 예쁜 글꼴은 아닙니다. 만약 글꼴을 변경하고 싶다면 다음과 같이 합니다. 명령 프롬프트 왼쪽 위에 있는 아이콘을 클릭합니다. 을 클릭합니다. 을 클릭합니다. 이제 명령 프롬프트를 닫고 다시 열면 변경된 글꼴로 나오는 것을 확인할 수 있습니다. 속성에서도 글꼴을 변경할 수 있는데, ...