bash처럼 Powershell에서 자동 완성 기능을 작동시킬 수 있나요?

bash처럼 Powershell에서 자동 완성 기능을 작동시킬 수 있나요?

저는 Powershell을 좋아하지만 Linux 환경에서 왔기 때문에 저를 정말 괴롭히는 몇 가지 사항이 있습니다. 예를 들어 기본 자동 완성이 작동하는 방식과 같습니다.

예: Get-PS는 첫 번째 일치 명령인 "Get-PSBreakpoint"로 확장됩니다. Bash에서 일치하는 명령이 하나만 있는 경우 bash는 일치하는 명령으로 확장됩니다. 여러 개의 탭을 한 번 탭하면 아무 작업도 수행되지 않는 경우 탭을 두 번 탭하면 일치하는 명령 목록이 표시되지만 확장되지는 않습니다. Powershell이 ​​이와 같이 동작하도록 하는 방법이 있습니까?

그리고 한 줄을 작성하고 마커를 이전 명령으로 다시 이동하는 경우(마커는 ^가 있는 위치에 있음):

"Get-PSS^ | Remove-PSSession"은 "Get-PSSession^"으로 자동 완성되어 모든 후행 명령을 제거합니다. Bash에서 후행 명령은 여전히 ​​영향을 받지 않습니다. 자동 완성 시 Powershell이 ​​후행 명령을 제거하지 않도록 하는 방법이 있습니까?

보너스는 CTRL+L을 눌러 화면을 지우는 것입니다. Ctrl+A는 줄의 시작 부분으로 이동하고 Ctrl+E는 줄의 끝으로 이동합니다.

답변1

확인해 보세요PSReadline.

기사에서 :

이 모듈은 PowerShell.exe의 명령줄 편집 환경을 대체합니다. 다음을 제공합니다:

  • 구문 색상 지정
  • 간단한 구문 오류 알림
  • 좋은 여러 줄 경험(편집 및 기록 모두)
  • 사용자 정의 가능한 키 바인딩
  • Cmd 및 emacs 모드(두 가지 모두 아직 완전히 구현되지 않았지만 둘 다 사용할 수 있음)
  • 다양한 구성 옵션
  • Bash 스타일 완성(Cmd 모드에서는 선택 사항, Emacs 모드에서는 기본값)
  • Bash/zsh 스타일 대화형 기록 검색(CTRL-R)
  • Emacs 잡아당기기/킬 링
  • PowerShell 토큰 기반 "단어" 이동 및 종료
  • 실행 취소/다시 실행
  • 라이브 세션 전반의 기록 공유를 포함하여 기록 자동 저장
  • Ctrl+Space를 통한 "메뉴" 완성(Intellisense와 유사, 화살표로 완성 선택)

매일 사용하고 있어요!

답변2

아마도 당신은 살펴 봐야 할 것입니다전원 탭, 사용자 정의 가능한 PowerShell 탭 확장입니다.

답변3

안녕 피터 그냥 누르세요F8속도 검색과 같은 것. 이는 해당 줄에 있는 항목으로 시작하는 이전에 실행한 명령으로 완료됩니다. 후행 삭제 문제가 짜증스럽습니다. 동일한 문제에 대해 Connect에 제안을 작성합니다. 기본적으로 Powershell ISE를 사용할 수 있는데, 이는 좀 더 잘 작동합니다(후행 문자를 삭제하지 마십시오).

답변4

PowerShell은 훌륭한 명령 프롬프트와 동일한 콘솔 기능을 사용합니다. 따라서 일반적인 Home/End가 있으며 다음과 같습니다.

  • F3이전 명령을 불러오려면
  • F1이전 명령에서 단일 문자를 복사하려면
  • F7팝업 기록 창

...하지만 내가 아는 한 가능한 모든 완료를 표시할 수 있는 기능은 없습니다.

관련 정보