PowerShell에 Bash와 같은 자동 완성 추가

나는 개발을 위해 주로 Ubuntu 또는 MacOS를 사용하지만 최근에 Blender 및 Unreal Engine으로 게임을 시작하려면 Windows 게임기의 성능이 필요하기 때문에 방향을 바꿨습니다.

PowerShell 콘솔을 사용할 때 내가 많이 놓친 것은 Bash가 제공하는 자동 완성 기능이었습니다.

  • 명령을 입력하기 시작하고 Tab Bash를 누르면 입력한 구로 시작하는 사용 가능한 모든 명령이 표시되고 화살표 키로 원하는 명령을 선택할 수 있습니다.

    기본적으로 PowerShell은 사용 가능한 모든 명령을 표시하지 않고 명령을 즉시 완료합니다.

  • 명령 시작 부분을 이미 입력하기 시작한 경우 ↑/↓를 사용하여 기록을 순환하여 이전에 사용한 매개변수로 명령을 자동 완성할 수 있습니다.

    화살표 키를 사용하여 기록을 순환하는 것도 PowerShell에서 지원되지만 이미 입력한 내용을 완전히 무시하고 모든 것을 기록에서 마지막으로 사용한 명령으로 바꿉니다.

  • PowerShell에서 더 나은 자동 완성 활성화





    고맙게도 PowerShell에는 이미 PSReadline라는 모듈에서 제공하는 이 기능이 내장되어 있습니다.
    PowerShell 프로필에서 활성화하기만 하면 됩니다(.bashrc에 해당하는 PowerShell) 👏:

  • PowerShell에서 직접 다음 명령을 입력하여 새 파일PowerShell Profile을 열거나 생성합니다.

    # Create profile when not exist
    if (!(Test-Path -Path $PROFILE.CurrentUserAllHosts)) {
      New-Item -ItemType File -Path $PROFILE.CurrentUserAllHosts -Force
    }
    
    # Open the profile with an editor (e.g. good old Notepad)
    ii $PROFILE.CurrentUserAllHosts
    




  • 편집기에서 프로필에 다음 줄을 추가합니다.

    # Shows navigable menu of all options when hitting Tab
    Set-PSReadlineKeyHandler -Key Tab -Function MenuComplete
    
    # Autocompletion for arrow keys
    Set-PSReadlineKeyHandler -Key UpArrow -Function HistorySearchBackward
    Set-PSReadlineKeyHandler -Key DownArrow -Function HistorySearchForward
    


  • 파일을 저장하고 PowerShell을 다시 열면 이제 고급 자동 완성 기능을 사용할 수 있습니다.

  • 이에 대한 공로를 답변에 게시한 StackOverflow 사용자svickJerryGoyal에게 돌아갑니다.

    보너스: MacOS에서 PowerShell에 open 명령 추가



    MacOS에는 Finder(MacOS의 파일 탐색기)에서 폴더를 열거나 터미널에서 기본 응용 프로그램으로 파일을 열 수 있는 강력한open 명령이 있습니다.
    PowerShell에는 ii(Invoke-Item을 나타냄)라는 이 명령이 내장되어 있습니다.ii라는 용어를 기억하기 어렵기 때문에 플랫폼 간에 전환할 때 더 편리하도록 open 별칭을 추가했습니다.

    PowerShell 프로필에 새 별칭을 추가하는 것은 New-Alias 명령을 사용하면 정말 간단하므로 프로필을 편집하고 다음 줄을 추가하기만 하면 됩니다.

    # New-Alias <alias> <aliased-command>
    New-Alias open ii
    


    저장하고 PowerShell을 다시 열고 open .를 입력하여 테스트하여 작업 디렉터리에서 Windows 탐색기 창을 엽니다.

    마지막 팁: 새로운 Windows 터미널 사용



    PowerShell 환경을 더욱 개선하려면 Microsoft 스토어에서 새로운 Windows 터미널 미리 보기도 설치해야 합니다.
    https://www.microsoft.com/store/productId/9N0DX20HK701

    Windows의 기본 콘솔보다 탭과 더 나은 사용자 지정 기능을 제공합니다.


    저는 아직 PowerShell을 처음 사용하므로 이와 같이 생산성을 높일 수 있는 다른 팁이 있다면 여기에 의견을 남겨주시면 감사하겠습니다. 💖

    좋은 웹페이지 즐겨찾기