Mi trovo spesso nella seguente posizione:ho iniziato a digitare un lungo comando al prompt di bash, ma a metà scopro che devo controllare qualcosa con un altro comando. Questo è un problema quando sono alla console (senza X), come spesso accade, perché poi ho solo i seguenti modi insoddisfacenti per farlo, che conosco:
- Premi ctrl +alt +F2 e accedi a un'altra console virtuale e scopri cosa volevo, quindi torna indietro e continua
- ctrl +a , digita echo + spazio + invio , scopri cosa volevo, premi ↑ finché non trovo il mio comando, ctrl +a , cancella x 5, ctrl +e e continua
- Evidenzia ciò che ho digitato finora con il mio mouse (se gpm è in esecuzione, come di solito lo è), premi ctrl +c per interrompere, scopri cosa volevo facendo attenzione a non usare il mouse per evidenziare elementi, quindi premi il pulsante centrale del mouse su un nuovo prompt e continua
- Prega gli dei della riga di comando affinché il comando scritto a metà non abbia effetti negativi ma semplicemente fallisca, e premi con cautela invio, quindi scopri cosa volevo, premi la freccia su finché non riavrò il mio comando e continua
- Salta nella mia macchina del tempo, torna indietro nel tempo e ricorda a me stesso di avviare la schermata prima di iniziare a digitare il comando, torna indietro nel presente, premi ctrl +a c , scopri cosa volevo, premi ctrl +a ctrl+a e continua
Quindi quello che voglio sapere è, c'è un modo più elegante per farlo? Una sorta di comando di subshell o simile?
Sono più interessato ai metodi che non richiedono alcuna preparazione o configurazione per funzionare.
Risposta accettata:
Una versione un po' più veloce di Ctrl di alex +A Ctrl +K (che si sposta all'inizio della riga e poi taglia tutto in avanti) è semplicemente usare Ctrl +U , che taglia all'indietro su bash e l'intera riga (indipendentemente dalla posizione corrente) su zsh. Quindi usi Ctrl +S per incollarlo di nuovo