.noseterase voor een file?Deze file is specifiek voor XS4ALL shell toegang door middel van bash of zsh.
Als deze file in je home directory staat, dan stelt
/etc/profile het terminal erase karakter niet in
(zoals het hoort).
Het terminal erase karakter is het karakter dat, als het wordt ontvangen, het karakter uitwist dat daarvoor werd ingetikt. Je kunt je huidige erase karakter opvragen met het shell commando stty.
Het erase karakter is doorgaans ^H (control-H, ASCII
karakter BS, 8 decimaal) or ^? (ASCII
karakter DEL, 127 decimaal). Wat het in een specifieke
situatie moet zijn hangt helemaal af van welke terminal (vt100,
console, ...) of terminal emulator (xterm, windows telnet, ...) je
gebruikt.
Het hoort ook overeen te komen met wat wordt verstuurd als je de toets genaamd "Backspace", "Delete" of "<-", net boven de "Enter" of "Return" toets, aanslaat.
Een fout erase karakter kan een probleem zijn bij sommige
programma's die voor hun regel-invoer daarvan afhankelijk zijn (een
voorbeeld is vim in line mode). In plaats van dat het laatste
karakter wordt gewist, verschijnt ^H of ^?
(het feitelijke erase karakter van je terminal) op de invoer.
Merk op dat bash (de Bourne Again SHell commandoverwerker) slim
genoeg is om zowel ^H als ^? te herkennen
als erase karakter, zodat een onjuist ingesteld erase karakter
flexibel wordt ondervangen.
Als je terminal erase karakter niet goed is ingesteld, dan:
Als je geen file .noseterasein je home directory
hebt, dan heeft /etc/profile je erase karakter
fout ingesteld. Maak in dat geval ~/.noseterase
aan.
Als je wel een file genaamd .noseterase
in je home directory hebt, dan heb je waarschijnlijk een brak
telnet programma, dat het gebruikte erase karakter niet doorgeeft
aan de telnet server (telnetd) van XS4ALL. Installeer een beter
telnet programma.
~/.login?'Tuurlijk, bijvoorbeeld met stty erase ^H of stty erase ^?.
Echter, dat is technisch gezien een foute oplossing. Binnen een shell initialisatie file is het onmogelijk om zeker te weten wat het erase karakter moet zijn, omdat je niet weet waarvandaan je inlogt. Misschien zeg je nu wel dat je altijd van thuis inlogt, maar op een kwade dag koop je een nieuwe computer of log je vanaf je vriend zijn computer in, en dan werkt het ineens niet meer.
De superieure oplossing is om erop te vertrouwen dat de login client (telnet, ssh of rlogin) de server vertelt wat het erase karakter is. Als die login client dat niet doet, dan is hij stuk. Installeer een andere.