Datang dari dunia FreeBSD Saya ingin membuat terminal Linux berperilaku seperti FreeBSD, terutama versi 9.1, pada dasarnya ketika Anda mengetik cd
di terminal dan menekan panah "naik", Anda dapat menelusuri semua perintah dalam sejarah dimulai dengan cd
yang membuat Anda mendapatkan banyak waktu.
Saya tidak tahu cara mengaktifkan fitur ini di Linux Debian atau CentOS yang memaksa saya untuk mengetik keseluruhan, bisakah seseorang tolong bantu.
bindkey -k (up|down) history-search-(back|for)ward
di saya.tcshrc
seperti dijelaskan di sini . Keren!Jawaban:
Tambahkan ke berikut ini ke
~/.inputrc
:Penjelasan
~/.inputrc
adalah file konfigurasi untuk GNU readline . Banyak shell, termasukbash
dantcsh
menggunakan readline untuk mengedit baris perintah. Dua baris di atas akan memberi tahu readline untuk menjalankan fungsi pencarian histori ketika urutan escape untuk tombol panah atas (\e[A
) dan tombol panah bawah (\e[B
) ditemui.sumber
Last word
sering merupakan jalan yang ingin saya coba di berbagai klise misterius. Dan Shift F12 untuk menempatkan saya kembali mengedit seluruh baris terakhir dari awal.~/.inputrc
adalah alat yang berguna.Apa yang terjadi adalah bahwa FreeBSD dan Linux menggunakan shell yang berbeda secara default. FreeBSD default ke tcsh , yang memiliki fitur interaktif yang lebih baik daripada bash di masa lalu (tetapi bash telah menyusul) tetapi fitur skrip yang jauh lebih buruk .
Cara paling mudah untuk mendapatkan lingkungan yang biasa Anda gunakan adalah dengan mengganti shell Anda ke tcsh di Linux. Asalkan tcsh diinstal di seluruh sistem (jika tidak, minta administrator sistem Anda untuk menginstalnya), jalankan
chsh -s tcsh
untuk mengganti shell default Anda.Atau, Anda dapat mengatur bash agar perintah ini sudah biasa Anda gunakan. Secara default, tanda panah Updan Downnavigasi di antara semua perintah dalam sejarah, bukan hanya yang dimulai dengan awalan yang Anda ketik. Untuk mengubahnya ke perilaku yang biasa Anda gunakan, letakkan baris berikut di file inisialisasi bash, yang ada
.bashrc
di direktori home Anda. Jalankan. ~/.bashrc
atau mulai shell baru untuk membaca kembali file inisialisasi.Urutan melarikan diri adalah apa yang dikirim terminal Anda ke shell ketika Anda menekan tombol panah. Upmungkin
\eOA
(melarikan diri,O
,A
) atau\e[A
tergantung pada terminal Anda, dan juga untuk Down.Secara default, bash menawarkan binding kunci berbeda untuk mencari histori perintah. Anda dapat menekan Ctrl+ R, lalu memasukkan beberapa karakter untuk mencari perintah yang mengandung substring ini di mana saja di telepon. Tekan Ctrl+ Suntuk maju bukannya mundur. Pencarian bersifat inkremental (mis. Tipe as-you); Alt+ Pdan Alt+ Nmemberi Anda pencarian non-inkremental.
Alih-alih bash dan tcsh, Anda bisa beralih ke zsh, yang memiliki beberapa fitur rapi yang tidak ditemukan di shell lain . Zsh memiliki Ctrl+ Rdan Ctrl+ Ssecara default seperti halnya bash. Untuk mendapatkan Updan Downseperti yang Anda miliki di tcsh, masukkan baris berikut di
~/.zshrc
:Jika Anda ingin menggunakan shell yang sama di mana-mana, Anda dapat menggunakan bash atau zsh di FreeBSD juga, asalkan port tersebut diinstal (sekali lagi, tanyakan administrator sistem Anda).
sumber
tcsh
tersedia untuk sebagian besar distribusi Linux. Coba instaltcsh
paket, lalu jalankanchsh -s /bin/tcsh
untuk menjadikannya shell default Anda.sumber
Jawaban lain mengatasinya, tetapi jika Anda menginginkan lebih, lihat di https://github.com/zsh-users/zsh-history-substring-search
Prezto ( https://github.com/sorin-ionescu/prezto ) juga penuh dengan barang zsh.
sumber