apakah ada yang tahu cara untuk memiliki fitur pencarian perintah mundur bash [Ctrl-r]
(dan [Ctrl-o]
) yang sangat berguna, di windows PowerShell?
C-r
adalah arrow up
manipulasi sejarah yang lebih kuat , seperti emacs C-r
yang mencari mundur di dalam perintah yang sebelumnya Anda masukkan. Kemudian C-o
jalankan perintah itu dan segera tempatkan pada baris perintah berikutnya setelah itu. Sehingga Anda dapat mengulangi serangkaian perintah yang berlalu secara efisien. Juga terlihat dalam riwayat yang disimpan, bukan riwayat sesi. ( ~/.bash_history
file). Yang sangat berguna.
Terima kasih.
ps: sebagai bonus, penyelesaian tab tidak bekerja dengan siklus akan sangat mengagumkan juga.
bash
keyboard-shortcuts
powershell
history
v.oddou
sumber
sumber
PSConsoleHostReadline
yang bisa berguna. Tempat yang baik untuk memulai adalah menggunakan PSReadLine , yang menggunakan kait itu. PSReadLine tidak mendukung ctrl-o, tetapi mendukung ctrl-r (seharusnya - itu tidak bekerja untuk saya). Saya mungkin melihat penerapan ctrl-o selama Natal karena memang terdengar bermanfaat.Jawaban:
Ketik huruf pertama dari perintah dan tekan F8.
Atau Anda dapat menekan F7dan mengetik huruf pertama.
Lebih detail: http://technet.microsoft.com/en-us/magazine/ff678293.aspx
sumber
WMF 5.0 RTM , yang mencakup Windows PowerShell 5 , sekarang mendukung fitur pencarian perintah terbalik yang sama dari bash
CTRL+R
. Saya telah menggunakan ini di Windows 10 Anniversary Edition, dan memori otot bash saya sangat bahagia.Dukungan sebenarnya berasal dari modul PowerShell PSReadLine yang saya lihat disebutkan dalam beberapa komentar pertanyaan. Hal yang baik adalah bahwa PSReadLine sekarang tampaknya termasuk dalam instalasi dasar WMF 5.0 , setidaknya pada Windows 10.
Jika Anda menjalankan PowerShell 3 atau lebih baru, Anda juga dapat menginstal PSReadLine juga dan mendapatkan fitur pencarian riwayat.
Catatan: Saya belum menemukan cara agar ini berfungsi di ISE sebagaimana
CTRL+R
dipetakan ke sesuatu yang lain (Tampilkan / Sembunyikan Panel Skrip).sumber
Untuk memanipulasi riwayat Anda, Anda dapat menggunakan cmdlet riwayat, daftarkan mereka dengan perintah ini:
Pencarian riwayat Anda dilakukan seperti ini, silakan membuat fungsi untuk mempersingkat:
sumber