Sebagai contoh, di bash saya bisa mengetik !xyz
yang akan menjalankan perintah terakhir yang saya ketik mulai dengan xyz
.
Bagaimana saya bisa memunculkan perintah terakhir yang saya ketikkan diawali dengan xyz
tetapi tanpa menjalankannya?
mis jadi saya bisa mengubah parameter sebelum eksekusi ....
!
notasi, karena Anda dapat menekan Ctrl-r beberapa kali untuk beralih lebih jauh ke dalam riwayat yang cocok. Ketika Anda tiba di tempat yang tepat, Anda dapat mencoba untuk mengeksekusi tidak dengan Enter tetapi dengan Ctrl-o untuk banyak keuntungan.Coba
!xyz:p
; itu akan memanggil kembali perintah ke atas sejarah tanpa menjalankannya, jadi mis. panah atas dapat langsung mengaksesnya untuk pengeditan interaktif.Sebagai samping, saya membuat praktek melakukan hal ini ketika mengingat perintah dengan regexp yang dibayangkan bisa menggali sesuatu merusak, sejak tergesa-gesa seorang
!r
, yang dimaksudkan untuk mengingat baru-baru ini yang palingrsync ...
perintah, ditarik kembali dan dieksekusi sebuahrm *
yang telah didorong ke stack lebih baru dari rsync.sumber
rm -rf ./*
tidak pernah bersyukur selama suatu periode. FYI Yang!xyz:p
berhasil, terima kasih, tetapi membutuhkan beberapa penekanan tombol daripada solusi ctrl-r.EMACS
orang-orang ey, sedangkan! -Path terbaik bagivi
olators seperti saya.Jalankan perintah berikut. Ini akan mengulangi perintah yang terakhir dieksekusi. Anda dapat menyalin dan mengedit perintah. Perintah ini diuji dalam debian.
sejarah | ekor -2 | grep -v history | cut -d '' -f4-
Atau Tekan dan tahan ctrl + R dan ketikkan huruf awal dari perintah terakhir Anda. Ini akan mencantumkan perintah yang Anda jalankan sebelumnya berdasarkan input Anda. Setelah itu menunjukkan perintah yang diinginkan, cukup tekan panah kanan untuk memilih perintah itu.
sumber
Jika pencarian riwayat terbalik gagal, lakukan apa saja dari:
Atau:
sumber