Eseguendo Ubuntu, apro un terminale e lo faccio
sudo bash
cd /
ls | head -n 1000
E prevedibilmente vengono restituite circa 20 directory.
Tuttavia, se faccio un ls e non lo installo in nulla, ls rimane sospeso fino a quando non lo uccido da un altro terminale. Cosa potrebbe succedere?
MODIFICARE:
> type ls
ls is aliased to `ls --color=auto`
MODIFICARE:
> /bin/ls /
<normal response>
> /bin/ls --color=auto
<hangs indefinitely>
Perché colorare l'output di ls sta causando il blocco di questo comando?
strace ls
può potenzialmente aiutarti a identificare il problema. strace
visualizza tutte le chiamate di sistema effettuate dal programma che invoca.
/bin/ls
(o meglio command ls
) a eseguire ls
senza le opzioni con alias, per confermare se è l'opzione colore a fare la differenza. FWIW, ls
disattiva la colorazione quando la sua uscita è un tubo o un altro dispositivo non terminale.
\ls
type ls
per controllare tutti i possibili alias ecc.