.bashrc와 .inputrc의 차이점은 무엇입니까


14

나는 유닉스 시스템에 새로운 오전, 그것은 흥미로운처럼 설정 파일에 사용자 정의 기능과 구성을 만들 것을 발견 .bashrc하고 .inputrc.

그러나 두 가지의 차이점을 이해하지 못합니다. 예를 들어, 별칭을 만들 때에 넣었습니다 .bashrc.

Example 1: alias ...='cd ../../'

이전 또는 다음 명령을 찾기 위해 화살표 키를 사용하는 것과 같은 작업을 만들 때 명령을에 넣습니다 .inputrc.

Example 2: "\e[A": history-search-backward

다른 설정 파일에 넣어야합니까? 언제 어디에 두어야 하는지 어떻게 구별 합니까?

미리 감사드립니다!

답변:


18

에있는 설정 .inputrc파일을 사용하는 모든 프로그램에 영향을 GNU 작성한 Readline 라이브러리를 뿐만 아니라, bash. 의 생각 .inputrc하는 방식과 유사 GNU Readline와의 구성 파일로서 파일 .bashrc에 대한 구성 파일입니다 bash.

GNU Readline은 다음과 같이 설명됩니다 :

... 사용자가 명령 줄을 입력 할 때 편집 할 수있는 응용 프로그램에서 사용하는 함수 집합입니다.

좀 더 명확하게하기 위해 .bashrc파일 에있는 설정 만에 영향을줍니다 bash. 당신이 선택적으로 실행하려는 경우 bashGNU의 readline 지원 또는 사용하지 않고, 당신이 호출 할 수 bash--noediting다음과 같이 옵션 : bash --noediting. bash옵션 에 대한 자세한 내용은 여기를 참조 하십시오 .

의 마지막 질문에 대답하기 위해

언제 어디에 두어야하는지 어떻게 구별합니까?

GNU Readline 라이브러리를 사용하는 시스템의 모든 프로그램에 영향을주는 옵션을 .inputrc원한다면 가장 좋은 선택입니다. 그렇지 않으면 단순히 bash세션 을 구성하려는 경우 .bashrc최선의 선택입니다.


@aliceinpalth에게 감사합니다. bash는 GNU Readline 라이브러리에 속합니까? GNU Readline 라이브러리에는 무엇이 있습니까?
Counter10000

5
@ Counter10000 이런 의미에서, 라이브러리는 "도구 모음"이 아니라 (왜 그렇게 생각하는지 알 수 있습니다) "다른 도구가 사용할 수있는 많은 기능"입니다. 이 경우 명령 행 (스크롤 백, 행 편집 등)으로 작업하기위한 기능입니다. Bash는 이것을 쉘 프롬프트에 사용합니다. 내 앞의 시스템에서는 bc(명령 줄 계산기), xfsprogs(파일 시스템 관리 프로그램), sqlite(매우 작은 데이터베이스 시스템), lftp(명령 줄 ftp 클라이언트) 등에 사용됩니다.
mattdm

1
@ Counter10000에 문제가 없습니다! 도와 드리겠습니다. @mattdm은 귀하의 질문에 매우 잘 대답했습니다. 이 프로그램들이 GNU Readline을 어떻게 활용하는지에 대해 더 배우려면 여기 에서 좋은 글을 쓸 수 있습니다 .
aliceinpalth

1
답의 마지막 단락이 적어도 정확하지 않은 것 같습니다. inputrc 파일에서만 설정할 수있는 몇 가지 옵션이 있다고 가정하여 두 파일이 완전히 "교환 할 수있는"것은 아닙니다. 나는이에서 옵션을 설정하려고 대답.bashrc아무 일도하지 않고. 이 설정은 효과가 있습니다.inputrc
user907860
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.