Windows 명령 줄에서 Ctrl + Backspace를 사용하여 단어를 삭제 하시겠습니까? Ctrl-Backspace를 사용하여 전체 단어를 지우려면

Windows XP 명령 행에서 Ctrl-Backspace를 사용하여 전체 단어를 지우려면 어떻게해야합니까? 전혀 가능합니까?



답변

CMD 또는 Powershell에는 단어를 왼쪽 또는 오른쪽으로 삭제하는 기본 바로 가기가 없습니다. 각 플랫폼이 수행 할 수있는 작업의 는 다음과 같습니다 . 좀 더 쉽게 만들 수있는 방법은 바로 가기를 사용하여 단어의 시작 또는 끝으로 이동하고 삭제 또는 백 스페이스를 시작하여 단어를 삭제하는 것입니다.


답변

이전 단어를 삭제하기 위해 Ctrl + Backspace 기능을 복제하는 AHK 코드. 이 작업은 Ctrl + Shift + 왼쪽으로 이전 단어를 선택한 다음 Delete 키를 누릅니다. 메모장 및 기타 프로그램에서 충분히 잘 작동하지만 win7에서는 약간 엉뚱합니다. 현재 터미널을 확인할 수 없습니다.

^BackSpace:: ;;Delete previous word
    Send ^+{Left}{Del}
 Return


답변

대신 이것을 시도하십시오 :

^BackSpace:: ;;Delete previous word
Send ^+{Left}
Loop, 500 {
    Send {Del}
}
Return

이전 단어에 배치 한 후 500 개의 삭제를 전송하여 이전 답변을 수정했습니다. 500이 너무 많을 수도 있습니다.

이것은 autohotkey ( http://www.autohotkey.com/ ) 용이며 cmd 창에서 작동하며 다음과 같이 붙여 넣기 코드가있는 cmd 창 특정 섹션에 넣습니다.

#IfWinActive ahk_class ConsoleWindowClass
; Paste in command window
^V::
Send !{Space}ep
return

^BackSpace:: ;;Delete previous word
Send ^+{Left}
Loop, 500 {
    Send {Del}
}
Return

#IfWinActive


답변

이것을 오랫동안 원했습니다! 🙂 AHK 사용에 대한 아이디어를 +1하고 스크립트 개선을 제안하고 싶었습니다. 나는 리눅스 쉘 에서처럼 ^ W를 지우는 것을 좋아하므로 이것을 발견하게되어 기쁘다.

첫 번째 스크립트는 CMD에서 나를 위해 작동하지 않았습니다 (단어를 뛰어 넘고 전체 단어가 아닌 첫 번째 문자를 지 웁니다). 위의 다음 스크립트는 역시 이상적이지 않으므로 Del 키 스트로크를 500 번 전송하는 대신 루프하는 것보다는 (초점을 변경하면 쏟아져서 다른 창으로 삭제를 보냅니다. eek) 대신 CMD의 F4 기능이 있습니다. 캐릭터의 경우 해당 문자까지 삭제합니다. 따라서 Ctrl-Left를 사용하여 단어를 뒤로 이동 한 다음 F4를 누른 다음 Space를 누르면 공백까지 삭제할 수 있습니다. 유일한 단점은 (a) 프롬프트 상자를 짧게 깜박이고, (b) 반복 된 단어 삭제는 공백 더미를 남깁니다 (무해하지만 약간 매력적이지 않음). 나는 또한 ^ U (라인 시작으로 지우기)와 리눅스 쉘과 같은 ^ A / ^ E / ^ F / ^ B 단어 / 문자 이동을 원했다. 터치 타입이므로 손을 메인 키보드에서 멀어지게하지 마십시오.) 🙂 나는 또한 붙여 넣기를 위해 David Hoppe의 위대한 ^ V에 보관했다.

그러므로:

#IfWinActive ahk_class ConsoleWindowClass
; Paste in command window
^V::
Send !{Space}ep
return

; was ^BackSpace, I prefer ^W a la linux
^W:: ;;Delete previous word
Send ^+{Left}
Send {F4}{Space}
Return

^U::   ;;erase to start of line
Send ^{Home}
Return

^A::   ;;move to start of line
Send {Home}
Return

^E::   ;;move to end of line
Send {End}
Return

^F::   ;; move one char forward
Send {Right}
Return

^B::   ;;move one char back
Send {Left}
Return
#IfWinActive


답변

Windows 명령 프롬프트에서는 기본적으로 불가능합니다.


답변

Shift+ Left를 선택하면 단어 뒤 / 앞에서 백 스프를 선택할 수 있기 때문에 더 좋을 것이라고 생각합니다 . 예를 들면 다음과 같습니다.

^w:: ;;Delete previous word
    Send ^+{Left}+{Left}
    Loop, 5 {
        Send {Del}
    }
Return
!d:: ;; Delete backward word
    Send ^+{Right}+{Rigt}
    Loop, 5 {
        Send {Backspace}
    }
Return


답변