Estou acostumado a usar a CTRLtecla para me mover mais rápido quando uso as setas esquerda e direita (vai para o final de uma palavra, em vez de um caractere por vez).
Posso fazer isso no bash de alguma forma?
Eu provavelmente poderia codificá-lo, mas gostaria de saber se há algo mais fácil / já feito.
^[OC
o mesmo que o seu. Emxterm
I get^[[1;5
que é o mesmo que Thomas.~/.inputrc
vez disso$include /etc/inputrc
também carregará o arquivo inputrc do sistema.Como Thomas explicou, você pode adicionar as ligações a
/etc/inputrc
.Outra alternativa para que carregue sempre que você fizer login é colocá-los
~/.bashrc
assim:#use ctl keys to move forward and back in words bind '"\eOC":forward-word' bind '"\eOD":backward-word'
Aprendi que você pode usar
cat > /dev/null
para ver os caracteres que seu teclado está enviando, por exemplo, CTRL + seta para a direita mostra:onde
^[
é o mesmo,\e
então é daí que vem o código nobind
comando.Você também pode procurar ligações como esta:
bind -p | grep forward-word
Tudo isso é muito incrível e estou feliz por descobrir mais um pouco do poder do bash.
fonte
inputrc
solução também se aplicará a outros programas que usam readline, por exemplo, o interpretador Python, a maioria dos outros shells. Observe que você também pode colocar os comandos~/.inputrc
se não tiver root ou não quiser que eles se apliquem a todos os usuários.I learned that you can use cat > /dev/null to look at the characters that your keyboard is sending
. #TILread
e pressionar Enter para obter o mesmo efeito quecat > /dev/null
. Sou preguiçoso, então gosto de soluções com menos digitação. :)Um .inputrc em seu diretório inicial fará com que ctrl + left pare de funcionar no Ubuntu (por exemplo).
Para fazer tudo funcionar, adicione o seguinte a ~ / .inputrc:
# Include system-wide inputrc, which is ignored by default when # a user has their own .inputrc file. $include /etc/inputrc
crédito para f.kowal
fonte
Adicionar
$include /etc/inputrc
dentro
~/.inputrc
Funcionou para CentOS Linux versão 8.2.2004 (Core)
fonte