Backstegstangenten är inte något du normalt tänker för mycket på, men ibland kanske du upptäcker att den inte fungerar korrekt i terminalen, speciellt när du är inloggad på en fjärrdator, ekar "^H" istället för att radera det du har skrivit.

Lyckligtvis är detta lätt att fixa med ett enkelt kommando.

Vad är dessa konstiga karaktärer?

Du kanske märker det här problemet när du loggar in på fjärrdatorer via SSH, sådana som kör icke-Linux Unix-operativsystem, särskilt proprietära system som Oracles Solaris. Många äldre datorterminaler använde ett annat kontrolltecken för Backspace än idag, med "Ctrl + H."

Moderna terminaler använder "Ctrl + ?" för Backspace. De flesta system kommer att känna igen det senare som Backspace nuförtiden, eftersom fysiska terminaler till stor del har varit det ersatt av terminalemulatorer på datorer, men du kan fortfarande stöta på system som inte har uppgraderats och fortfarande förvänta sig"Ctrl + H."

Detta är en anledning till att du kommer att se gamla Unix-händer skämtsamt använda "^H" i meddelanden på samma sätt som människor använder ironiska genomstrukningar för att ange "Hoppsan, det var inte meningen att du skulle se det!" De kanske säger något i stil med "Jag älskar Linux-system mangling^H^H^H^H^H^H^Hadministration."

instagram viewer

Kontrollera terminalinställningar med stty

Du kan kontrollera vilka kontrolltecken som systemet använder med stty kommando. De -a flaggan kommer att ge en läsbar utdata av kontrolltecken.

stty -a

Leta efter tecknet "radera". Om det står "^H" så använder det det äldre Backspace-tecknet. Lyckligtvis kan du också fixa detta med kommandot stty.

Ställa in raderingstecken

Du kan ställa in raderingstecknet till det som din dator använder med detta enkla kommando:

stty radera '^?'

Prova detta och se om backstegstangenten fungerar korrekt. Du kan lägga detta i skalets startfil, som t.ex .bashrc för Bash och .zshrc för Zsh att ställa in detta automatiskt när du loggar in i systemet.

Relaterad: Vad betyder Bash i Linux?

I likhet med backstegstangenten kan du åtgärda problemet med kommandot stty om Tab inte fungerar i terminalen.

Nu fungerar din backstegstangent i Linux-terminalen

Nu när du har löst problemet med Backspace-nyckeln i Linux-terminalen kan du verkligen börja jobba.

Om du använder terminalen för att logga in på fjärrsystem kan du bli ännu mer produktiv med kombinationen av tmux och Mosh, vilket låter dig skapa sessioner som kan hålla dig uppkopplad för alltid.

Få bättre fjärrsessioner på Linux med Mosh och Tmux

Förbättra din fjärråtkomst till Linux-enheter över SSH med Mosh och kör flera sessioner med Tmux.

Läs Nästa

Dela med sigTweetE-post
Relaterade ämnen
  • Linux
  • Terminal
  • Felsökning
Om författaren
David Delony (87 publicerade artiklar)

David är en frilansskribent baserad i Pacific Northwest, men kommer ursprungligen från Bay Area. Han har varit en teknikentusiast sedan barnsben. Davids intressen inkluderar att läsa, titta på tv-program och filmer av hög kvalitet, retrospel och skivsamling.

Mer från David Delony

Prenumerera på vårt nyhetsbrev

Gå med i vårt nyhetsbrev för tekniska tips, recensioner, gratis e-böcker och exklusiva erbjudanden!

Klicka här för att prenumerera