Untuk beberapa proyek saya sering mengetikkan perintah pasangan, seperti misalnya:
cd an/extremely/long/path/in/which/I/have/some/kinda/project
dan
./runmyproject --with some --command line --options set
Melihat bahwa saya cukup malas saya mencoba untuk menghindari mengetik perintah-perintah itu secara penuh lagi dan lagi. Jadi saya tentu saja dapat menggunakan tombol-atas banyak untuk menemukan kembali perintah-perintah itu, tetapi sering kali, saya juga memiliki begitu banyak perintah di antaranya, sehingga mencari itu membutuhkan waktu lebih lama daripada hanya mengetiknya.
Saya sekarang bertanya-tanya apakah ada beberapa jenis utilitas yang dapat menyarankan perintah penuh yang saya gunakan banyak, ketika saya belum mengetik semuanya. Jadi saya bisa misalnya mengetik 'cd an /' dan itu sudah menyarankan sisa jalan karena saya sudah menggunakannya begitu banyak bulan lalu.
Saya memang menemukan sesuatu yang disebut Bash Smart Complete. Tapi itu sedikit "bodoh" karena tidak melihat perintah yang saya gunakan sebelumnya. Saya baru saja menemukan jawaban SO ini , yang menyarankan menempatkan perintah yang saya gunakan banyak dalam file. Namun, itu tidak cukup responsif karena saya perlu membuat file baru untuk itu setiap kali saya memulai proyek baru atau mengubah folder atau argumen program.
Adakah yang tahu utilitas lain atau cara lain untuk mencapai ini? Atau, adakah yang tahu bagaimana saya bisa mengubah Bash Smart Complete sehingga bisa melihat perintah yang saya gunakan bulan lalu dan menyelesaikan perintah yang cocok dan paling banyak digunakan dalam sebulan terakhir?
[EDIT] Berikut adalah beberapa jawaban yang sangat bagus. Saya belum menandai apa pun sebagai jawaban yang pasti. Bukan karena saya tidak suka jawabannya, saya suka, tetapi karena tidak ada satu pun dari mereka yang menjadi pemenang mutlak. Saya pikir Finalterm adalah proyek yang hebat. Sayangnya masih agak kasar di tepinya. Sebagai contoh; itu belum mendukung copy-paste. Saya akan terus mengawasi proyek itu, karena ketika akan matang saya pikir itu akan menjadi aplikasi terminal yang hebat. Adapun jawaban lainnya; mereka juga menyarankan untuk membuat alias, yang bukan yang ingin saya lakukan karena itu menciptakan pekerjaan tambahan alih-alih mengambil pekerjaan, atau menggunakan Ctrl + R, yang merupakan brilian (saya tidak tahu tentang itu!). Beberapa orang menyarankan untuk menggunakan Ctrl + R, jadi saya tidak bisa benar-benar menyorot satu jawaban dari yang lain.
Jadi untuk sekarang saya pasti menggunakan Ctrl + R, dan di masa depan saya mungkin menggunakan Finalterm.
Terima kasih atas semua jawaban hebat kawan!
sumber
zsh
. Ini menawarkan semua yang Anda minta dan banyak lagi. Pindah dari bash ke zshJawaban:
Jika perintah sering digunakan, mereka dicatat dalam perintah sejarah bash track in
.bash_history
.Sekarang triknya: Anda dapat membalikkan pencarian histori ini untuk menjalankan kembali perintah dengan menekan CTRL-r .
Dalam mode pencarian riwayat terbalik, bash menunjukkan, langsung, saat Anda mengetik , perintah terbaru dalam sejarah yang dimulai dengan input yang Anda berikan. Kemudian tekan enter untuk menerima dan menjalankan perintah yang diusulkan. Terus tekan CTRL-R untuk menggilir perintah yang lebih lama dengan awalan yang sama.
Ini sudah built-in di bash, tidak perlu mengkustomisasi skrip atau menginstal perangkat lunak :) Ini adalah salah satu fitur bash yang paling berguna, imho.
sumber
Rekatkan (Ctrl-Shift-V) yang berikut ini ke layar terminal:
Keluar (Ctrl-D) layar terminal, lalu buka Terminal lagi.
Sekarang Anda cukup mengetik pasangan karakter pertama, lalu tekan Atas atau Bawah untuk menelusuri daftar yang difilter
sumber
Term Final
Ada Terminal App yang disebut Final Term ini . Di antara banyak fitur-fiturnya, ia juga memiliki sejarah perintah remebering, sehingga Anda dapat memilihnya. Berikut ini beberapa fitur lainnya:
Anda dapat membaca lebih lanjut tentang itu di artikel ini .
Ini adalah situs web dari penciptanya. http://finalterm.org/
Untuk menginstalnya
Peringatan
Saya telah mengatakan bahwa itu menjanjikan. Satu-satunya masalah adalah bahwa itu pada versi 0.1 Jadi beberapa hal seperti
vim
dannano
belum berfungsi dengan baik. Saya juga memperhatikan bahwa itu belum mendukung Drag-and-Drop, dan salin dan tempel. Tetapi memiliki fitur yang Anda minta. Saat perangkat lunak matang, itu akan menjadi salah satu terminal terbaik untuk desktop.Tangkapan layar
Berikut ini fungsinya:
Semoga ini membantu.
* Saya di Saucy, jadi itu sebabnya saya memiliki latar belakang Salamander :)
sumber
Gunakan
alias
untuk seluruh perintah Anda, atau tambahkan direktori ke dalam$PATH
. Selain itu, Anda tidak perlu mengubah direktori ke tempat executable Anda (atau skrip, atau apa pun) untuk menjalankannya, jadi itu cukup sederhana. Kedua metode mengharuskan Anda untuk me-restart terminal yang Anda gunakan sebelum perubahan berlaku.Inilah cara membuat contoh
bash
alias
untuk Anda (tambahkan baris berikut ke~/.bashrc
file Anda ):Dengan cara ini, yang perlu Anda lakukan adalah input
runmyproject
ke terminal di mana pun Anda berada, tanpa harus menentukan opsi / argumen.Atau, Anda dapat menambahkan jalur proyek ke
$PATH
variabel lingkungan Anda . Untuk melakukannya, tambahkan baris berikut ke~/.bashrc
file Anda :Dalam hal ini Anda masih perlu menentukan opsi / argumen Anda untuk dieksekusi saat menjalankannya.
sumber
Ketika saya menemukan diri saya sering harus berubah ke direktori seperti ini:
Saya hanya akan melakukan ini sekali:
Dan sejak saat itu, gunakan:
Ketika datang ke:
Saya akan menggunakan pencarian histori bash. Pada prompt perintah cukup tekan Ctrl-R dan ketik 'runmy'. Voila, seluruh perintah dengan semua opsi seperti yang dimasukkan terakhir ada di sana untuk dimasukkan kembali. Jika saya tidak menyukai opsi yang saya gunakan terakhir kali dan ingin melihat perintah sebelumnya, saya akan terus menekan Ctrl-R untuk menggilir semua perintah sebelumnya yang berisi "runmy".
Pencarian riwayat Ctrl-R dapat membantu dengan perintah 'cd' juga, jika Anda tidak menyukai ide symlink. [Ctrl-R] / proj kemungkinan besar akan mengembalikan perintah terakhir yang Anda gunakan untuk cd ke direktori itu.
Daripada menambahkan alias atau beralih ke shell khusus, saya selalu lebih suka belajar menggunakan fitur bash yang dirancang untuk membantu dengan hal semacam ini. Dengan begitu saya bisa menggunakan fitur yang sama pada mesin jarak jauh atau jika saya harus duduk di terminal kolega.
sumber
tekan control + r pada keyboard Anda - itu akan menempatkan Anda dalam mode sejarah terbalik dan Anda dapat mengetik bagian yang Anda tahu dan seluruh perintah akan ditampilkan
Ada cara lain yang tercantum di sini
http://www.talug.org/events/20030709/cmdline_history.html
Saya cenderung menggunakan kontrol R yang paling banyak
sumber
Coba ini ... Ini berfungsi untuk semua perintah dalam file histori Anda ... adalah hal yang sama dengan Ctrl+ R, tapi saya pikir itu lebih intuitif :)
sunting
/etc/inputrc
batalkan komentar atau tambahkan dua baris ini
logout / masuk
kemudian cobalah untuk menulis beberapa perintah yang tercantum dalam sejarah ...
Suka...
menulis
dan tekan
Page Upatau Page Dnuntuk menavigasi file riwayat Anda dalam mencari perintah yang dimulai dengan "ls"
Jika Anda melakukan semuanya dengan benar, maka perintah otomatis Anda harus lengkap ...
sumber