Anda dapat menggabungkan fitur pencarian riwayat dan riwayat Bash yang ada. Tekan Ctrl-Runtuk memulai pencarian terbalik tambahan, lalu mulai mengetik bagian jalan yang paling mungkin unik.
Anda dapat terus mengetik huruf hingga Anda kembali ke perintah paling baru yang cd
melibatkan direktori itu, atau Anda dapat menekan Ctrl-Rlagi untuk melompat kembali ke riwayat ke perintah terbaru berikutnya yang cocok dengan apa yang Anda ketikkan sejauh ini.
Saya melakukan ini sepanjang waktu.
Sebenarnya, saya melangkah lebih jauh. Begitu saya mulai menemukan urutan perintah yang layak disimpan dalam sejarah tetapi tidak layak dilakukan ke skrip shell, saya mulai menghubungkannya dengan &&
dan ;
kombinator sehingga saya dapat membalikkan pencarian substring dari satu perintah panjang itu, tekan Enterdan jalankan seluruh urutan di sekali.
Misalnya, inilah cara saya membangun dan menjalankan salah satu program saya selama pengembangan:
$ ( cd .. ; make install ) && ./start_my_program
Saya melakukan ini dari direktori instal, yang berada di bawah direktori sumber tingkat atas. Dengan membungkus cd
, membangun dan menginstal bagian dalam sub-shell, saya memastikan bahwa apa pun yang terjadi selama proses ini, saya kembali ke shell normal saya tanpa ada yang berubah. Hanya jika itu berhasil (&&) saya memulai program yang dibangun dan diinstal. Saya dapat menemukan ini dalam sejarah saya hanya dengan Ctrl-Ritu sta, bahwa menjadi semua yang biasanya saya butuhkan untuk secara unik menemukan urutan perintah ini.
Contoh lain tentang bagaimana saya menggunakan ini adalah urutan yang digunakan untuk membangun RPM untuk program yang sama. Sebagian besar pekerjaan yang membosankan ada di skrip shell, tetapi masih ada beberapa perintah yang biasanya harus saya ketik untuk melakukan semua pekerjaan membangun dan menggunakan RPM yang dibangun, yang sekarang saya jarang harus ketik ulang, karena Bash terus itu dalam sejarah bagiku.
Gabungkan semua ini dengan export HISTSIZE=bignum
dan shopt histappend
dan Anda baru saja membangun memori perintah gajah.
Solusi lain yang saya kodekan sekali adalah dalam jawaban saya untuk pertanyaan lain di sini . Mungkin harus dirancang untuk tujuan Anda, dan itu hanya menangani cd
perintah, sedangkan opsi pencarian riwayat bekerja di mana-mana dan untuk setiap perintah.