Eu estava lendo a página de manual readline e descobri vários comandos excelentes que eu não conhecia. No entanto, vários não têm ligações de teclas padrão. Existe uma maneira de executar os comandos não acoplados do shell?
Não estou perguntando como vincular o comando em ~ / .inputrc, mas como executá-lo como um "momento único" do shell ou em um script bash.
Por exemplo, o comando "dump-variable". Existe algum comando que eu possa alimentar "variáveis de despejo" como um argumento para executá-lo?
Respostas:
Acredito que o que você está procurando é o
bind
próprio comando. De acordo com asman builtin
informações, a execuçãobind <readline-command>
permite executar pontuais, no entanto, eu não consegui fazê-lo funcionar como o manual diz que deveria ... continuava fazendo as chaves não funcionarem para mim; sua milhagem pode variar. Encontrei os seguintes comandos que podem ser úteis para você.Editar Nota Gostaria de salientar como é chato que ele não funcione como o manual diz que deveria, porque se você digitar
bind
e pressionar tab para concluir automaticamente, ele mostra todos os comandos.fonte
bind readline-command
: Suspeito quecommand
exista uma linha de definição (mapeamento), não uma função de linha de leitura diretamente solicitável . A conclusão automática é um detalhe explicitamente pré-configurado em algumas plataformas (por exemplo, Fedora 20), mas não em muitas outras ; sua presença NÃO implica que você possa chamar funções readline diretamente - é uma especificação de conclusão de comando bastante "burra": a conclusão funciona em qualquer argumento fornecidobind
.-X
para comandos shell (definidos via-x
).