Windows 10에서 PowerShell 명령 기록을 가져오는 방법

Windows 10의 PowerShell은 현재 세션에서 실행한 모든 명령의 기록을 제공할 수 있지만 많은 사용자에게는 이것으로 충분하지 않습니다. 세션 간에 실행된 명령 기록이 필요합니다. PowerShell 명령 기록을 가져와야 하고 현재 세션에 대한 기록만으로는 트릭을 수행하지 못하는 경우 도움이 될 수 있는 스크립트와 로그 파일이 있습니다.

명령 기록 현재 세션

PowerShell 5를 실행하는 경우 다음 명령을 실행하여 현재 세션에 대한 명령 기록을 가져올 수 있습니다.

Get-History

기본적으로 PowerShell은 최대 50개의 명령을 저장할 수 있지만 더 많이 저장하도록 변경할 수 있습니다. PowerShell을 열고 제목 표시줄을 마우스 오른쪽 버튼으로 클릭합니다. 상황에 맞는 메뉴에서 속성으로 이동합니다. 속성 창에서 옵션 탭으로 이동합니다. 기본값이 50으로 설정된 명령 기록 섹션이 표시됩니다. 더 높은 값으로 변경합니다.

PowerShell 기록 로그

기록 로그를 보려면 먼저 다음 명령을 사용하여 PSReadLine 모듈을 설치해야 합니다.

Install-Module PSReadLine

다음으로 다음 명령을 실행하면 파일 위치가 반환됩니다. 이 위치의 파일은 PowerShell에서 실행한 모든 명령의 전체 기록을 제공합니다.

(Get-PSReadlineOption).HistorySavePath

세션 간 PowerShell 명령 기록

이것은 약간 긴 과정이지만 그만한 가치가 있습니다. 이 솔루션은 인텔. 먼저 다음 위치를 열고 이 위치에 Microsoft.PowerShell_profile.ps1이라는 파일이 있는지 확인합니다.

C:Users<username>DocumentsWindowsPowerShell

파일이 없으면 PowerShell을 열고 다음 명령을 실행합니다. 메모장에서 프로필 파일이 열리지만 해당 파일은 존재하지 않으며 PowerShell은 많은 정보를 제공하고 생성 여부를 묻습니다. 파일을 생성하도록 허용합니다.

notepad $Profile

열려 있는 메모장 파일을 닫습니다. PowerShell에서 이 명령을 실행하여 PowerShell 5를 실행하고 있는지 확인합니다.

$PSVersionTable.PSVersion

다음으로 다음 명령을 사용하여 실행 정책을 RemoteSigned로 설정합니다.

set-executionpolicy remotesigned

다음으로 설치해야 합니다. PsUrl 그리고 PSReadline 모듈. 다음 명령으로 설치할 수 있지만 오류가 발생하면 링크된 페이지에 설명된 프로세스에 따라 수동으로 설치하거나 저장소를 신뢰할 수 있는 저장소로 추가한 다음 명령을 다시 실행해 보십시오.

install-module PsUrl
install-module PSReadline

이제 해당 모듈이 설치되었으므로 이 파일을 엽니다.

C:Users<username>DocumentsWindowsPowerShellMicrosoft.PowerShell_profile.ps1

이 파일 안에 다음을 붙여넣고 저장합니다.

$HistoryFilePath = Join-Path ([Environment]::GetFolderPath('UserProfile')) .ps_history
Register-EngineEvent PowerShell.Exiting -Action { Get-History | Export-Clixml $HistoryFilePath } | out-null
if (Test-path $HistoryFilePath) { Import-Clixml $HistoryFilePath | Add-History }
# if you don't already have this configured...
Set-PSReadlineKeyHandler -Key UpArrow -Function HistorySearchBackward
Set-PSReadlineKeyHandler -Key DownArrow -Function HistorySearchForward

PowerShell에서 명령 기록을 보려면 Get-History 명령을 실행해야 하지만 기록이 저장되었는지 확인하는 한 가지 매우 중요한 단계가 있습니다. 닫기 버튼을 클릭하여 PowerShell을 닫을 수 없습니다. 대신 항상 exit 명령으로 닫아야 합니다.

  Windows 10에서 macOS 커서를 얻는 방법

위쪽 및 아래쪽 화살표 키를 사용하여 이전 명령을 순환할 수 있습니다.