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 / PowerToys / 설치

윈도우 11 / PowerToys / 설치

PowerToys는 Microsoft가 제공하는 유용한 유틸리티 모음이다. 현재 구성은 다음과 같다. Always On PowerToys Awake Color Picker FancyZones File Explorer Add-ons Image Resizer Keyboard Manager Mouse utilities PowerRename PowerToys Run Shortcut Guide Video Conference Mute 설치는 두 가지 방식으로 할 수 있다. GitHub에서 다운로드하여 설치하기 https://github.com/microsoft/PowerToys에 접속한 후 최신 릴리즈를 클릭한다. PC나 노트북이라면 보통 PowerToysSetup-0.6.1.1-x64.exe를 다운로드하면 된다. 다운로드한 파일을 실행하여 설치한다. 설치 후 실행하면 포함된 기능을 볼 수 있고, ...

윈도우 10 / 파일 암호화하는 방법

윈도우 10 / 파일 암호화하는 방법

나만 봐야 하는 중요한 파일이 있다면 파일을 암호화하는 것이 좋습니다. 파일을 암호화하는 방법은 여러 가지가 있으나, 윈도우 10이라면 내장된 기능으로 암호화할 수 있습니다. 만약 파일 또는 폴더가 아니라 드라이브 전체는 보호하고 싶다면 BitLocker를 사용하세요. Windows 10 Pro 이상에서 사용할 수 있습니다. 파일 암호화 하기 암호화하려는 파일을 선택하고 마우스 우클릭합니다. 을 클릭합니다. 을 클릭하고... [데이터 보호를 위해 ...

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

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

사진을 동영상으로 만드는 프로그램은 여러 가지가 있습니다. 그 중 즐겨 사용했던 것이 마이크로소프트의 무비 메이커인데, 현재는 개발이 중단되었습니다. 무비 메이커를 대체할 소프트웨어를 찾다가 윈도우 10의 사진 앱으로도 사진을 동영상으로 만들 수 있다는 것을 알게되었습니다. 새 소프트웨어를 설치하는 것보다는 이미 설치되어 있는 것을 활용하는 게 나을 거 같아 사진 앱으로 동영상을 ...

윈도우 10 / 자동 로그인하는 방법

윈도우 10 / 자동 로그인하는 방법

컴퓨터를 사용하려면 사용자 계정이 필요하고, 보통 암호를 설정한다. 그런데 정말 나 혼자만 사용하는 컴퓨터라면 암호를 입력하고 로그인하는 과정이 불편할 수 있다. 컴퓨터를 켤 때 암호를 입력하지 않고 바로 로그인하도록 할 수 있을까? 방법은 두 가지가 있다. 아래의 스크린샷은 윈도우 10 기준이지만, 윈도우 11에서도 동일한 방법으로 가능하다. 방법 1 - 암호 제거하기 사용자 계정이 ...

윈도우 / hosts 파일 / 역할, 위치, 편집하는 방법

윈도우 운영체제에서 hosts 파일은 도메인 이름과 IP 주소 간의 매핑을 관리하는 중요한 시스템 파일입니다. 이 파일은 네트워크 트래픽을 제어하고, 특정 도메인 이름을 특정 IP 주소로 직접 연결하는 역할을 합니다. Hosts 파일이란? Hosts 파일은 텍스트 파일로, 도메인 이름을 IP 주소로 매핑하는 항목을 포함하고 있습니다. 네트워크 요청이 발생할 때, 윈도우 운영체제는 먼저 hosts 파일을 ...

윈도우 10 / Sticky Notes / 포스트잇 프로그램

윈도우 10 / Sticky Notes / 포스트잇 프로그램

Sticky Notes 간단한 메모를 할 때 포스트잇을 많이 사용합니다. 포스트잇에 메모를 하고 눈에 잘 띄는 모니터 같은 곳에 붙여놓죠. 그러한 메모를 컴퓨터에서 할 수 있는 프로그램들이 있습니다. 그 중 하나가 Sticky Notes입니다. Sticky Notes의 가장 큰 특징은 마이크로소프트가 만들었고 윈도우 10에 포함되어 있다는 것입니다. 한마디로 접근성이 좋다는 것이죠. 윈도우 10 사용자라면 따로 무언가를 ...

윈도우 / 명령어 / diskpart / 디스크 초기화하고 MBR 또는 GPT로 변경하는 방법

윈도우 / 명령어 / diskpart / 디스크 초기화하고 MBR 또는 GPT로 변경하는 방법

MBR과 GPT 하드디스크 파티션 스타일에는 MBR(마스터 부트 레코드)과 GPT(GUID 파티션 테이블)가 있다. MBR 스타일은 호환성이 좋으나 디스크를 2TB까지만 사용할 수 있다. 따라서 3TB 디스크를 MBR 스타일로 초기화하면 1TB는 사용할 수 없게 된다. GPT 스타일은 용량이 큰 디스크를 사용할 수 있지만, 구형 메인보드에서는 부팅 디스크로 사용할 수 없다. MBR을 GPT로, GPT를 MBR로 변경하기 위해서는 diskpart ...

윈도우 11 / 시작 / 최근 연 파일 삭제하는 방법

윈도우 11 / 시작 / 최근 연 파일 삭제하는 방법

윈도우 11의 시작 버튼을 클릭하면, 아래 쪽에 최근 사용한 파일 목록 등 여러 가지가 나옵니다. 최근 작업한 파일에 빠르게 접근할 수 있도록 하는 기능인데, 남에게 내가 무엇을 했는지 들킬 위험이 있습니다. 만약 기밀이 필요한 작업, 지극히 개인적인 작업을 자주 한다면 최근 파일이 나오지 않는 게 좋습니다. 이는 설정에서 변경할 수 있습니다. 을 ...

윈도우 10 / 메모장 / 자동 줄 바꿈 하는 방법, 글꼴 변경하는 방법

윈도우 10 / 메모장 / 자동 줄 바꿈 하는 방법, 글꼴 변경하는 방법

자동 줄 바꿈 하는 방법 메모장은 기본적으로 긴 텍스트라 하더라도 줄 바꿈을 하지 않는다. 따라서 긴 텍스트의 경우 아래처럼 좌우 스크롤이 생긴다. 자동 줄 바꿈을 하고 싶다면 을 클릭한다. 이제 아래처럼 메모장 크기에 맞게 줄 바꿈이 된다. 글꼴 변경하는 방법 메모장의 기본 글꼴은 맑은 고딕이다. 다른 글꼴을 사용하고 싶다면 [서식 - ...

윈도우 11 / 인터넷 연결 속도 확인하는 방법

윈도우 11 / 인터넷 연결 속도 확인하는 방법

윈도우 11에서 인터넷 연결 속도를 확인하는 방법을 알아봅니다. 설정, 제어판, PowerShell을 이용한 링크 속도 확인 방법을 정리했습니다