
cd
쉘 내장 기능(예 : 또는 echo
)과 쉘 키보드 단축키(예 ctrl+u
: 또는 ) 의 차이점은 무엇입니까 ctrl+l
?
나에게는 둘 다 "내장"인 것 같습니다. 시스템 아키텍처를 통한 주요 차이점은 무엇입니까?
sh
저는 개인적으로 Bash를 사용하지만 이 질문은 다른 많은 쉘 에도 관련이 있다고 생각합니다 .
답변1
대부분의 내장 기능은 쉘의 상태/동작을 ("영구적으로") 변경합니다. echo
그리고 printf
예외입니다.
^U
^L
키 바인딩입니다 . 그들은 입력 라인 편집만 처리합니다. 이러한 기능 없이도 동일한 작업을 수행할 수 있습니다. 그들은 단지 시간을 절약할 뿐입니다. 명령을 실행한 후에는 이전에 키 바인딩 기능을 사용했는지 여부에 차이가 없습니다.
아마도 가장 분명한 차이점은 키 바인딩이 명령줄에서 실행할 수 있는 명령이 아니라는 것입니다. 이를 구성하려면 내장( bind
)이 필요합니다(셸 "상태 변경").