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 / 노트북 덮개 닫아도 절전 모드로 들어가지 않게 하는 방법

윈도우 10 / 노트북 덮개 닫아도 절전 모드로 들어가지 않게 하는 방법

별도의 모니터를 연결해서 쓰는 경우, 원격으로 접속해서 쓰는 경우 등 노트북 덮개를 닫고 사용하는 게 편할 때가 있다. 그런데 보통의 경우 노트북 덮개를 닫으면 절전 모드로 들어간다. 덮개는 노트북을 장시간 사용하지 않을 때 주로 닫기 때문에 그렇게 설정되어 있다. 노트북 덮개를 닫아도 계속 사용하기 위해서는 전원 설정을 변경해주어야 한다. 방법은... 아래는 윈도우 ...

윈도우 10 / 글꼴 설치, 삭제하는 방법

윈도우 10 / 글꼴 설치, 삭제하는 방법

글꼴을 설치 파일로 받은 경우 글꼴을 실행 가능한 설치 파일로 받았다면, 그 파일을 실행시키면 글꼴이 설치됩니다. 삭제는 에서 할 수 있습니다. 글꼴을 글꼴 파일로 받은 경우 글꼴 설치 TTF, OTF 같은 글꼴 파일로 받았다면 설치 방법은 두 가지입니다. 첫 번째 방법은 마우스 우클릭 한 후 를 클릭하는 것입니다. 윈도우 ...

윈도우 10 / 디스크 조각 모음 하는 방법

윈도우 10 / 디스크 조각 모음 하는 방법

디스크 조각 모음 파일을 읽고 쓰는 게 느려졌다면, 디스크 조각 모음으로 속도를 개선할 수 있다고 합니다. 체감할 정도로 속도가 빨라졌다고 느낀 적은 별로 없지만, 포맷을 하기 전에 한번 쯤 시도해보는 것도 좋은 방법이라고 생각합니다.(개인적으론 포맷이 가장 확실한 방법이라고 생각합니다.) 드라이브 최적화 실행하기 파일 탐색기에서 드라이브에 마우스를 올리고 우클릭하고 을 클릭합니다. 아무 드라이브를 선택해도 ...

윈도우 / du / 폴더별 사용량 확인

윈도우 / du / 폴더별 사용량 확인

윈도우에서 폴더별로 저장 공간을 얼마나 사용하고 있는지 확인하는 방법은 여러 가지가 있습니다. 그 중 가장 편하다고 생각되는 것은 du 명령어를 사용하는 것입니다. Du (disk usage) reports the disk space usage for the directory you specify. By default it recurses directories to show the total size of a directory and its subdirectories. du는 ...

윈도우 10 / 마이크로소프트 계정으로 윈도우에 로그인하는 방법

윈도우 10 / 마이크로소프트 계정으로 윈도우에 로그인하는 방법

윈도우 10에 로그인하는 방법은 두 가지가 있습니다. 하나는 로컬 계정으로 로그인하는 것이고, 다른 하나는 마이크로소프트 계정으로 로그인하는 것입니다. 마이크로소프트 계정으로 로그인하는 것은, 안드로이드 스마트폰에 구글 계정으로 로그인하는 거 또는 아이패드에 애플 계정으로 로그인하는 것과 비슷하다고 보면 됩니다. 윈도우에 마이크로소프트 계정으로 로그인하는 것은 여러 가지 장점이 있겠지만, 내 PC의 정보를 마이크로소프트와 공유한다는 ...

윈도우 10 / 폴더 아이콘 변경하는 방법과 아이콘 구하는 방법

윈도우 10 / 폴더 아이콘 변경하는 방법과 아이콘 구하는 방법

폴더 아이콘 폴더의 특성에 따라 다른 모양의 아이콘을 설정할 수 있어요. 윈도우 10이라면, 기본적으로 문서는 종이, 다운로드는 아래쪽으로 향하는 화살표, 사진은 이미지가 폴더에 표시되요. 아이콘만 보고 어떤 내용이 담겨 있는지 구분할 수 있는 유용한 기능입니다. 폴더 아이콘 직접 설정하기 폴더 아이콘은 주어진 모양대로 사용해야 하는 것은 아니에요. 내가 원하는 모양으로 바꿀 수 있어요. 폴더를 선택한 ...

윈도우 10 / 터치 키보드(가상 키보드, 화면 키보드) 사용하는 방법

윈도우 10 / 터치 키보드(가상 키보드, 화면 키보드) 사용하는 방법

갑자기 키보드가 망가졌습니다. 그런데 급하게 메일을 보내야합니다. 그렇다면 터치 키보드를 사용하세요. 원래는 터치가 되는 모니터를 위한 기능인데, 마우스로도 가능합니다. 작업 표시줄에 마우스를 올리고 우클릭합니다. 를 클릭합니다. 글자를 입력해야하는 프로그램을 실행하고, 오른쪽 아래에 있는 키보드 아이콘을 클릭하면... 화면에 키보드가 만들어집니다. 이제 마우스로 자판을 클릭해서 글자를 입력할 수 있습니다. 키보드 설정 아이콘을 클릭해서... 키보드 모양을 ...

윈도우 11 / CPU 온도 측정하는 방법

윈도우 11 / CPU 온도 측정하는 방법

CPU 온도는 컴퓨터 성능과 안정성에 중요한 영향을 미칩니다. 과열된 CPU는 시스템 성능 저하, 불안정한 작동, 심지어는 하드웨어 손상까지 초래할 수 있습니다. 윈도우 11에서 CPU 온도를 측정하는 여러 방법을 통해 시스템 상태를 모니터링하고 적절한 조치를 취할 수 있습니다. BIOS/UEFI를 통해 CPU 온도 측정 BIOS 또는 UEFI는 컴퓨터가 부팅될 때 실행되는 기본 시스템 소프트웨어로, ...

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

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

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

윈도우 10 / 저장소 공간, 저장소 풀

윈도우 10 / 저장소 공간, 저장소 풀

여러 개의 하드디스크를 하나처럼 사용하고 싶을 때, 일부 하드 디스크가 고장나도 데이터 손상이 없도록 만들고 싶을 때, 저장소 풀을 사용해보세요. 간단한 조작으로 하드 디스크의 활용도를 높일 수 있습니다. 저장소 풀 만들기 Windows 설정을 엽니다.(단축키 WIN+I) 을 클릭합니다. 왼쪽 메뉴에서 를 클릭합니다. 를 클릭합니다. 를 클릭합니다. 저장소 풀에 포함할 하드디스크를 선택하고 ...