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
Apa bahasa input Anda? Apakah Anda menggunakan bahasa Inggris standar atau keyboard lain?
—
Sergiy Kolodyazhnyy
Sudah
—
steeldriver
histexpand
diatur dalam opsi shell Anda? apa output dari echo $-
?
@muru, ... berbicara sebagai mantan freenode #bash biasa, saya biasa menghabiskan banyak waktu menasihati orang-orang untuk menonaktifkannya, tanpa mendapatkan pushback dari tetua saluran lainnya - orang-orang dikejutkan oleh perintah dengan
—
Charles Duffy
!
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.
@muru, saya menonaktifkannya di tengah file konfigurasi saya ketika sedang menyalin konten .bashrc secara membabi buta dari salah satu dari banyak contoh file yang saya temukan di internet.
—
Bulat M.
echo foo
lalu!!
? Juga, harap edit pertanyaan Anda dan tambahkan hasilnyahistory | tail
atau kurang lebih. Apakah sesi shell Anda memiliki riwayat?