Baru-baru ini saya mengetik di terminal saya
username:~$ !!
dan mendapat kesalahan dari bash :
bash: !!: command not found
Pada saat yang sama, itu berhasil ketika dilakukan di bawah superuser.
Saya menyelidiki konten PATH pengguna saya dan tidak menemukan yang mencurigakan:
/home/username/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
Berikut ini adalah output dari:
username:~$ history | tail
1993 date
1994 cal
1995 vcal
1996 uptime
1997 uname
1998 uptime
1999 uname
2000 uptime
2001 uname
2002 history | tail
Lain:
username:~$ echo foo
foo
username:~$ !!
bash: !!: command not found
command-line
bash
bash-history
Bulat M.
sumber
sumber
echo foo
lalu!!
? Juga, harap edit pertanyaan Anda dan tambahkan hasilnyahistory | tail
atau kurang lebih. Apakah sesi shell Anda memiliki riwayat?histexpand
diatur dalam opsi shell Anda? apa output dariecho $-
?!
literal yang tidak dihargai tanpa kutipan tambahan adalah kejadian yang jauh lebih umum daripada menemukan seseorang yang menginginkan fungsionalitas perluasan riwayat tidak tersedia dalam bentuk yang lebih mudah digunakan melalui readline.Jawaban:
Perluasan riwayat mungkin dinonaktifkan:
Coba
set -H
atauset -o histexpand
.sumber
set -o
, atau variabel khusus$-
set -o | grep hist