Il terminale dà: comando non trovato, quando si digita troppo velocemente

0

Sto avendo il problema più strano sul mio nuovo MacBook Pro, ho avuto lo stesso su quello vecchio e ho pensato che potesse avere qualcosa a che fare con quello.

Sul mio vecchio MacBook Pro, ogni volta che ho usato il pipe pipe nel mio terminale seguito da, diciamo, grep otterrei un command not found . Se poi ho appena digitato grep in chiaro nel Terminale, otterrei l'output standard.

Più tardi ho scoperto che il problema si verificava solo quando ho digitato il comando velocemente:

Diciamo che volevo usare tee per ereditare qualcosa in alcuni file di testo. Da un altro terminale che farei:

echo "-r base.txt" | tee -a development.txt texting.txt production.txt

Conosco questo comando e sono in grado di digitare tutto in ~ 3 secondi. Mi dà:

-bash: tee: command not found

Ora, se provo esattamente lo stesso comando, ma prendo davvero il mio tempo a digitare, dico che uso 20 secondi per scriverlo, poi ottengo:

-r base.txt

Questa è una conferma che il comando è stato eseguito correttamente.

Credevo che qualcosa non andasse nel mio vecchio MacBook. Quattro mesi fa, quando ho comprato un nuovo Mac, era esattamente lo stesso.

Ho quindi provato a fare una nuova installazione. Ho cancellato il disco rigido e installato macOS da zero. La stessa cosa si verifica ancora.

Qualcun altro ha riscontrato questo problema? Se sì, hai una soluzione?

Ho anche provato ad installare un altro terminale come iTerminal2, penso che sia quello che viene chiamato, ma con lo stesso identico problema

    
posta Alexander 01.05.2017 - 15:36
fonte

1 risposta

3

In realtà il tuo problema non è specifico per Terminal.app.

Il problema è più causato dal rallentamento dei tasti rispetto alla velocità effettiva. Quando si digita il carattere | (pipe) è necessario tenere premuto il tasto Alt. Quando digiti velocemente, in realtà sei troppo lento nel rilasciare il tasto Alt.

Questo significa che non stai effettivamente digitando uno spazio prima del prossimo comando. Stai premendo Alt-Space che ti dà uno "spazio non frazionante" - che non è lo stesso di uno spazio, ma sembra in questo modo nel Terminale.

Lo spazio "non-breaking" non è visto dalla shell come delimitatore di comando, ma come parte di un comando o nome di file. E quindi ottieni l'errore che nessun file o directory di questo tipo esiste.

Per risolvere il problema, ricorda di sollevare il dito dal tasto alt prima di digitare spazio.

In alternativa puoi cambiare la mappatura della tastiera in modo che Alt-Space produca uno spazio ordinario. Puoi trovare una guida per farlo qui:

link

    
risposta data 01.05.2017 - 15:53
fonte

Leggi altre domande sui tag