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 / Micorosft Teams / 삭제 또는 비활성화 하는 방법

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

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

윈도우 10 / ISO 파일 열고 사용하는 방법

윈도우 10 / ISO 파일 열고 사용하는 방법

ISO 파일은 CD 또는 DVD를 하나의 파일로 만든 것이다. Virtual DVD 같은 가상 드라이브 프로그램으로 마운트하여 일반 CD처럼 사용할 수 있다. 만약 윈도우 10을 사용하고 있다면, 별도의 소프트웨어를 설치할 필요 없이 윈도우에 포함된 기능으로 ISO 파일을 열고 닫을 수 있다. ISO 파일 열기 ISO 파일에 마우스를 올리고 우클릭한다. 팝업메뉴에서 를 클릭한다. 마치 CD를 넣은 것처럼 ...

윈도우 10 / IP 확인하는 방법

윈도우 10 / IP 확인하는 방법

IP는 두 가지로 구분할 수 있습니다. 내 컴퓨터에 할당된 IP 외부와 통신하는 IP 보통 인터넷 공유기나 방화벽을 통하여 통신하므로, 내 컴퓨터에 할당된 IP와 외부와 통신하는 IP는 다릅니다. 예를 들어 다음과 같이 구성되어 있다면... 공유기의 IP가 외부와 통신하는 IP, 공유기가 컴퓨터에 할당한 IP가 내 컴퓨터에 할당된 IP입니다. 윈도우 10에서 두 가지 IP를 확인하는 방법을 알아봅니다. 내 컴퓨터에 ...

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

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

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

윈도우 10 / 컴퓨터 이름 변경하는 세 가지 방법

윈도우 10 / 컴퓨터 이름 변경하는 세 가지 방법

윈도우 10에서 컴퓨터 이름을 변경하는 방법 세 가지를 소개합니다. 어떤 방식으로 해도 컴퓨터를 재시작해야 반영됩니다. 방법 1 - 설정에서 변경 Windows 설정을 엽니다. 단축키는 입니다. 을 클릭합니다. 왼쪽에서 정보를 클릭합니다. 오른쪽에서 를 클릭합니다. 원하는 이름을 입력한 후 을 클릭하여 변경을 완료합니다. 방법 2 - 시스템 속성에서 변경 실행 창을 엽니다. 단축키는 입니다. sysdm.cpl을 실행합니다. 을 클릭합니다. 원하는 컴퓨터 이름을 ...

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

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

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

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

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

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

윈도우 10 / PING 허용하는 방법

윈도우 10 / PING 허용하는 방법

네트워크에 잘 연결되어 있는지 확인하는 방법 중의 하나는 ping을 날리는 것입니다. 그런데 윈도우 10은 기본적으로 ping에 대하여 응답하지 않는 것으로 설정되어 있습니다. 그래서 네트워크에 잘 연결되어 있어도 ping으로 확인을 할 수가 없습니다. 만약 ping으로 연결 상태를 확인해야 한다면, 다음의 방법으로 응답하도록 설정합니다. 제어판을 엽니다. 을 클릭합니다. 을 클릭합니다. 을 클릭합니다. 왼쪽에서 ...

윈도우 10 / 윈도우 11로 업그레이드하는 방법

윈도우 10 / 윈도우 11로 업그레이드하는 방법

윈도우 10 사용자가 윈도우 11을 사용하고 싶다면, 윈도우 11을 새로 설치하는 방법과 윈도우 10에서 업그레이드 하는 방법 중에서 하나를 선택할 수 있습니다. 새로 윈도우 11을 설치하고 필요한 앱을 하나씩 추가하는 게 성능 측면에서 가장 좋기는 하지만, 사용하는 앱이 많고 설정할 것이 많다면 업그레이드하는 것이 편합니다. 다음은 윈도우 10에서 윈도우 11로 ...

윈도우 10 / 제품 키 변경, 제품 에디션 변경

윈도우 10 / 제품 키 변경, 제품 에디션 변경

윈도우 10의 제품 키를 변경해야 할 때가 있습니다. 메인보드 등 주요 부품이 바뀌어서 새 라이선스 키를 넣어야 할 때도 있고, Windows 10 Home에서 Windows 10 Pro로 에디션 업그레이드를 해야 할 때도 있고... 흔한 경우는 아니지만 작업이 필요할 때가 있습니다. Windows 10에서는 Windows Home에서 Windows Pro로, Windows Pro에서 Windows Enterprise로 변경할 때 포맷하고 ...