Lavorando su un terminale Unix e all'improvviso il terminale si blocca dopo aver premuto Ctrl+S ? Bene, hai riscontrato lo stesso comportamento durante la modifica di un file utilizzando Vi ? Nessun problema, questo tutorial ti aiuterà a riprenderlo. In genere, la maggior parte degli editor ti permette di salvare un file usando Ctrl+S e facciamo lo stesso con i terminali Unix e Vi editor e solo per vedere quelli freeze. Sfortunatamente, premendo Ctrl+S nel terminale Unix o Vi l'editor bloccherà lo schermo. Perché si comporta così?
Perché Ctrl+S blocca Vi Editor e Unix Terminal?
Per capire il motivo, dobbiamo tornare alla storia. Sì, i giorni in cui furono progettati i modelli Teletype (una telescrivente elettromeccanica), molto prima della nascita dei computer. Questi modelli utilizzavano un controllo del flusso software:ad esempio, se la stampante non poteva stampare i dati alla stessa velocità con cui la telescrivente riceveva i dati, la telescriveva inviava XOFF (Smetti di trasmettere per ora) segnale alla macchina che invia i dati e poi per riprenderlo, invierebbe XON segnale.
Gli equivalenti da tastiera di Ctrl+S per XOFF e Ctrl+Q per XON sopravvivono ancora nei moderni emulatori di terminale in Unix:gli emulatori di terminale generalmente emulano i terminali fisici (come VT100) che è qualcosa di simile al funzionamento delle telescriventi. Questo è il motivo, Ctrl+S blocca il terminale e devi solo premere Ctrl+Q per riportarlo alla normalità.
Come sbloccare Vi Editor o Unix Terminal?
Puoi sbloccare o riprendere il terminale usando Ctrl+Q .