De vez em quando, seria útil adicionar um comando diretamente ao histórico no Bash sem executá-lo. Até agora, a coisa fechada que encontrei está adicionando um #
na frente dele e retornando. Existem maneiras melhores?
bash
command-history
Grumbel
fonte
fonte
./resize-images.sh
cuja linha final indica um comando que você deve executar para desfazer as alterações, que seria muito útil se, em vez do script poderia adicionar o comando à minha história, então eu só baterup-enter
se eu precisava para desfazerhistory -s
comandoVocê pode até ligar um pressionamento de tecla para fazer isso por você. Você pode inserir isso em um prompt do Bash:
ou adicione isso ao seu
~/.inputrc
:então você pode digitar algo e pressionar Ctrl- qe ele será adicionado ao histórico sem ser executado. O espaço antes do "histórico" faz com que o
history
próprio comando não seja adicionado ao histórico se suaHISTCONTROL
variável contiverignorespace
ouignoreboth
. Outra combinação de teclas pode ser escolhida em vez de "\ Cq".fonte
É difícil criar algo mais curto que um "comando" de um caractere, por isso precisamos realmente ir para o nível de pressionamento de tecla. Com minha configuração do bash e um teclado americano, o que você faz agora é:
#
(necessário SHIFT): +1 instrução, +2 pressionamento de teclaassim, no total de 3 instruções, 5 pressionamentos de tecla.
O uso ALT#faz o mesmo em 1 instrução, 2 pressionamentos de tecla.
YMMV, dependendo do layout do teclado e da configuração do bash.
fonte
#command
é muito mais rápidohistory -s command
e fácil de usar, se você mapearhistory-search-backward/-forward
corretamente. Mas é uma questão de gosto.