Come nascondere i comandi digitati in una shell Linux?


14

C'è un modo per nascondere ciò che sto scrivendo in una shell, quindi il terminale non fa eco ai miei tasti, mantenendo comunque l'output del comando?

Ad esempio, se corro ip addr show, l'unica cosa sullo schermo dovrebbe essere l'output di quel comando, non lo "show ip addr" che ho digitato.


1
Ciao. Puoi essere un po 'più specifico riguardo content?
Nikhil Mulley

1
Vuoi dire nascondere l'input standard come quando si digita la password login? Stai usando bash? Fornisci ulteriori informazioni per favore.

contenuto significa comandi, ad esempio se digito un comando "ip addr show" non deve essere visibile nel terminale bash quello che sto scrivendo. Ma posso
vederne

3
È un requisito strano. Cosa stai cercando di ottenere? Si noti che con le shell tipiche, il comando verrà inserito anche nella cronologia e salvato su disco.
Gilles 'SO- smetti di essere malvagio' l'

Risposte:


25

Se si desidera disabilitare l'eco dei comandi digitati, provare questo:

stty -echo

Puoi riattivare l'eco usando questo comando:

stty echo

Nota che l'output dei comandi verrà mostrato in un modo un po 'diverso, vedi questa sessione di esempio:

$ pwd
/tmp
$ stty -echo
$ /tmp

Ciò è risultato dalla digitazione pwd, ritorno stty -echo, ritorno pwd, ritorno.


2
Nota che questo potrebbe funzionare o meno a seconda della tua shell e forse delle stranezze che hai inserito nel tuo prompt. Anche l'impostazione si applica a tutto in quel terminale; se si esegue un comando a schermo intero è probabile che si reimposti su stty +echo.
Gilles 'SO- smetti di essere malvagio' l'
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.