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에서 사용자 암호를 제거하는 방법은 여러 가지가 있습니다. 상황에 따라 적절한 방법이 달라지겠지만, 가장 쉬운 방법은 다음과 같습니다.

윈도우 11 / 빌드 넘버 확인하는 방법

윈도우 11 / 빌드 넘버 확인하는 방법

윈도우 11 빌드 넘버란? 윈도우 11 빌드 넘버는 운영체제의 세부 업데이트 상태를 나타내는 번호입니다. 같은 Windows 11이라도 설치된 기능 업데이트나 누적 업데이트에 따라 빌드 번호가 달라질 수 있습니다. 예를 들어 다음과 같은 형식으로 표시됩니다. Windows 11 Pro 24H2 OS 빌드 26100.xxxx 여기서 24H2는 윈도우 11의 기능 업데이트 버전이고, 26100.xxxx와 같은 숫자가 OS 빌드 넘버입니다. 뒤쪽의 ...

윈도우 10 / 사용자 계정 추가하는 방법, 제거하는 방법

윈도우 10 / 사용자 계정 추가하는 방법, 제거하는 방법

사용자 계정 추가하는 방법 Windows 설정을 엽니다. 단축키는 입니다. 을 클릭합니다. 를 클릭합니다. 를 클릭합니다. 마이크로소프트 계정을 추가하거나 로컬 계정을 추가할 수 있습니다. 마이크로소프트 계정 추가는 여기를 참고하세요. 이 글에서는 로컬 계정을 추가하겠습니다. 를 클릭합니다. 를 클릭합니다. 사용자 이름을 입력합니다. 암호는 선택 사항입니다. ...

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

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

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

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

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

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

윈도우 / 단축키

윈도우 / 단축키

윈도우 단축키 단축키 수행 작업 WIN 시작 메뉴를 열거나 닫기 WIN + D 바탕화면을 표시하거나 숨기기 WIN + E 파일 탐색기 열기 WIN + I 윈도우 설정 열기 WIN + L PC 잠그기 WIN + M 모든 창 최소화 하기 WIN + Ctrl + Q 빠른 지원 열기 WIN + R 실행 창 열기 WIN + S 검색 열기 WIN + V 클립보드 열기 WIN + X 빠른 링크 메뉴 열기 WIN + . 이모지 열기 WIN ...

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

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

파일 탐색기에서 파일을 보면, 확장자가 보이지 않아도 아이콘과 유형으로 어떤 파일인지 확인할 수 있습니다. 그럼에도 불구하고 파일 이름에 확장자가 있는 게 더 작업하기 좋다면 보이게 할 수 있습니다.

윈도우 10 / PC용 페이스북 메신저 설치하는 방법

윈도우 10 / PC용 페이스북 메신저 설치하는 방법

메신저로 많은 일을 할 때는 PC용을 사용하는 게 편합니다. 스마트폰의 작은 화면과 키보드로 메시지를 주고 받는 건 아무래도 불편하니까요. 그래서 카카오톡은 PC용이 따로 있습니다. 모바일과 거의 같은 모양으로 PC에서 대화를 할 수 있습니다. 기능도 거의 같습니다. 그렇다면 페이스북 메신저도 PC용이 있을까요? 있습니다. 그런데 인스톨하는 프로그램이 아니고 마이크로소프트 스토어에 있습니다. 즉 윈도우 7 ...

윈도우 11 / 팀즈 / 작업 표시줄에서 숨기는 방법, 제거하는 방법

윈도우 11 / 팀즈 / 작업 표시줄에서 숨기는 방법, 제거하는 방법

윈도우 11은 팀즈가 기본적으로 설치된다. 마이크로소프트 계정이 있으면 사용할 수 있는 것으로, 무료 버전이다.(구입해야 하는 기업용 팀즈와는 다른 소프트웨어이다.) MS가 열심히 퍼트리는 것으로, 작업 표시줄에 고정되어 있다. 마우스를 올리고 우클릭해도 가 없다. 작업 표시줄에서 없애기 위해서는 으로 가야 한다. 을 비활성화하면 작업 표시줄에서 사라진다. 만약 아예 삭제하고 싶다면 시작 메뉴에서 ...

윈도우 10 / 사용자 계정 컨트롤 끄는 방법, 켜는 방법

윈도우 10 / 사용자 계정 컨트롤 끄는 방법, 켜는 방법

사용자 계정 컨트롤 소프트웨어를 설치하거나 실행할 때 정말로 실행하겠냐고 메시지가 나옵니다. 유해한 소프트웨어의 실행을 방지하기 위한 것으로, 사용자가 다시 한번 생각하도록 알림을 보내는 것입니다. 이 알림 설정은 사용자 계정 컨트롤에서 합니다. 더 자주 알림을 보내게 할 수도 있고, 알림을 없앨 수도 있습니다. 사용자 계정 컨트롤 설정하기 사용자 계정 컨트롤 설정은 제어판에서 합니다. 검색에서 ...