Recentemente eu digitei no meu terminal
username:~$ !!
e obteve erro do bash :
bash: !!: command not found
Ao mesmo tempo, é bem-sucedido quando feito sob superusuário.
Investiguei o conteúdo do PATH do meu usuário e não encontrei nada suspeito:
/home/username/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
Aqui está a saída de:
username:~$ history | tail
1993 date
1994 cal
1995 vcal
1996 uptime
1997 uname
1998 uptime
1999 uname
2000 uptime
2001 uname
2002 history | tail
Outro:
username:~$ echo foo
foo
username:~$ !!
bash: !!: command not found
Qual é o seu idioma de entrada? Você está usando o inglês padrão ou outro teclado?
—
Sergiy Kolodyazhnyy
Está
—
steeldriver
histexpand
definido nas suas opções de shell? qual é a saída echo $-
?
@muru, ... falando como um ex-freenode #bash regular, eu costumava passar muito tempo aconselhando as pessoas a desabilitá-lo, sem receber qualquer retrocesso de outros anciãos do canal - pessoas sendo surpreendidas por comandos com
—
Charles Duffy
!
literais que não são honrados sem a citação extra foi uma ocorrência muito mais comum do que encontrar alguém que desejasse que a funcionalidade de expansão do histórico não estivesse disponível no formato mais fácil de usar por meio da linha de leitura.
@uru, eu desativei no meio do meu arquivo de configuração quando estava copiando cegamente o conteúdo .bashrc de um dos muitos arquivos de exemplo que encontrei na internet.
—
precisa
echo foo
e depois!!
? Além disso, edite sua pergunta e adicione a saída de maishistory | tail
ou menos. Sua sessão de shell tem algum histórico?