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.
$
Chris
sumber
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.

Robin Thoni
sumber
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.

Hauke ​​Laging
sumber
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