Il completamento della scheda Bash interrompe la ricerca


8

Quando scrivo in bash e premo il tasto "tab" per il completamento automatico, a volte ci vuole un tempo significativo. Ad esempio, il file IO per leggere le directory richiede> 5 secondi, quindi sono in attesa di completare il processo di IO prima di poter continuare a digitare. Mi sento frustrato e Ctrl-C in modo da poter ripetere ciò che stavo scrivendo.

Ctrl-C è sfortunato, dal momento che devo digitare nuovamente tutto. Come posso dire a bash di smettere di provare a soddisfare la mia richiesta di completamento automatico.

$ /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.
$

Potresti voler dare un'occhiata a questo. ubuntuforums.org/showthread.php?t=1865538
Ramesh

Risposte:


1

L'ho appena trovato qui .

Usa Ctrl+\. Arresterà il completamento e tornerà alla riga di comando senza perdere il comando corrente.


Sfortunatamente questo non ha funzionato per me su Ubuntu
josh

0

Puoi avere problemi simili senza il completamento della scheda. Ciò non introduce una differenza tecnica, vale a dire che si applicano le stesse soluzioni.

Una possibilità è quella di avviare la ricerca in background e scrivere il risultato su un FIFO. Puoi leggere da FIFO con un timeout quindi ( read -t 0.3 ...).

Immagino di aver visto una soluzione più semplice rispetto agli FIFO qui di recente ... ma al momento non me lo ricordo. read -tfunziona anche con una pipeline, ma la finitura di readnon uccide le parti precedenti della pipeline e la pipeline ritorna solo dopo che tutte le sue parti sono terminate.


come è rilevante per la domanda ...?
Lensovet,

@lensovet Se non sembra esserci un modo per risolvere il problema nel modo richiesto (cioè interrompere la ricerca), un suggerimento su come (almeno in parte) evitare il problema mi sembra abbastanza utile.
Hauke ​​Laging,

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.