Qual é a diferença entre .bashrc e .inputrc

3

Eu sou novo no sistema unix e acho interessante criar funções e configurações personalizadas nos arquivos de configuração como .bashrc e .inputrc .

No entanto, não entendo as diferenças entre os dois. Por exemplo, quando eu criei alias, eu os coloquei em .bashrc .

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

Quando eu crio operações como usar a tecla de seta para procurar pelo comando anterior ou seguinte, coloco o comando em .inputrc .

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

Por que eu preciso colocá-los em arquivos de configuração diferentes? Como distingo quando para colocar em que lugar?

Obrigado antecipadamente!

    
por Counter10000 15.02.2018 / 22:02

1 resposta

7

As configurações que estão no arquivo .inputrc afetam todos os programas que usam a biblioteca de linha de leitura GNU , não apenas bash . Pense no arquivo .inputrc como sendo um arquivo de configuração para o GNU Readline similar a como .bashrc é um arquivo de configuração para bash .

GNU Readline é descrito como:

... A set of functions for use by applications that allow users to edit command lines as they are typed in.

Para esclarecer um pouco mais, as configurações que estão no arquivo .bashrc somente afetam bash . Se você quiser executar bash sem o uso ou o suporte do GNU Readline, invoque bash com a opção --noediting da seguinte forma: bash --noediting . Você pode descobrir mais sobre as opções bash aqui .

Para responder sua última pergunta

How do I distinguish when to put what where?

Se você quiser que uma opção afete todos os programas em seu sistema que usam a biblioteca GNU Readline, .inputrc seria a melhor escolha. Caso contrário, se você quiser simplesmente configurar sua sessão bash , .bashrc seria a melhor escolha.

    
por 15.02.2018 / 22:14