Penyelesaian tab Bash, berhenti mencari


8

Ketika saya mengetikkan bash dan saya menekan tombol "tab" untuk menyelesaikan otomatis, kadang-kadang butuh waktu yang signifikan. Misalnya, file IO untuk membaca direktori membutuhkan waktu> 5 detik, dan dengan demikian saya digantung menunggu IO untuk menyelesaikan sebelum saya dapat melanjutkan mengetik. Saya frustrasi dan Ctrl-C sehingga saya bisa mengulang apa yang saya ketikkan.

Ctrl-C sangat disayangkan, karena saya harus mengetik ulang semuanya lagi. Bagaimana saya dapat memberitahu bash untuk berhenti berusaha memenuhi permintaan lengkapi otomatis saya.

$ /long/path/to/some/d     # once I've typed this, I press <TAB>. I now will be
                           # stuck waiting for perhaps 10 seconds. The only thing I
                           # know to do is Ctrl-C. When I press Ctrl-C, I am forced
                           # to retype the original command string.
$

Anda mungkin ingin melihatnya. ubuntuforums.org/showthread.php?t=1865538
Ramesh

Jawaban:


1

Saya baru saja menemukan ini di sini .

Gunakan Ctrl+\. Ini akan menghentikan penyelesaian dan kembali ke baris perintah Anda tanpa kehilangan perintah saat ini.


Sayangnya ini tidak berhasil untuk saya di Ubuntu
josh

0

Anda dapat memiliki masalah serupa tanpa penyelesaian tab. Ini tidak memperkenalkan perbedaan teknis yaitu solusi yang sama berlaku.

Salah satu kemungkinan adalah memulai pencarian di latar belakang dan menulis hasilnya ke FIFO. Anda dapat membaca dari FIFO dengan batas waktu kemudian ( read -t 0.3 ...).

Saya kira saya telah melihat solusi yang lebih sederhana daripada FIFO di sini baru-baru ini ... tapi saat ini saya tidak ingat itu. read -tbekerja dengan pipa juga, tetapi finishing readtidak membunuh bagian pipa sebelumnya dan pipa kembali hanya setelah semua bagiannya selesai.


bagaimana ini relevan dengan pertanyaan ...?
lensovet

@lensovet Jika sepertinya tidak ada cara untuk menyelesaikan masalah dengan cara yang diminta (yaitu membatalkan pencarian) maka petunjuk bagaimana (setidaknya sebagian) menghindari masalah tampaknya cukup berguna bagi saya.
Hauke ​​Laging

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.