stty -a
Terminal ayarlarınızı görüntülemek için koşmayı deneyin . Şüphem, icrnl
ayarınızın ayarlanmadığı ve -icrnl
normal ayar ayarının açık olması yerine (eksi işareti kapalı olduğu anlamına gelir) olarak gösterileceğidir. Giriş yaptığımda terminalim normal olarak nasıl kuruluyor:
$ stty -a
speed 38400 baud; rows 45; columns 80; line = 0;
intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = <undef>;
eol2 = <undef>; swtch = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R;
werase = ^W; lnext = ^V; flush = ^O; min = 1; time = 0;
-parenb -parodd cs8 -hupcl -cstopb cread -clocal -crtscts
-ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl -ixon -ixoff
-iuclc -ixany -imaxbel iutf8
opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0
isig icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt
echoctl echoke
Ve satır sonlarında bir sorunum yok: ya return (^ M) ya da enter (^ J) giriş satırlarını sonlandıracak. Ancak kapatırsam icrnl
, o zaman bir programla konuştuğumda ve aniden enter tuşuna bastığımda ^ M kodları aniden beliriyor:
$ stty -icrnl
$ read line
Line of text^M^M^M^M
$ stty -a
speed 38400 baud; rows 45; columns 80; line = 0;
intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = <undef>;
eol2 = <undef>; swtch = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R;
werase = ^W; lnext = ^V; flush = ^O; min = 1; time = 0;
-parenb -parodd cs8 -hupcl -cstopb cread -clocal -crtscts
-ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr -icrnl -ixon -ixoff
-iuclc -ixany -imaxbel iutf8
opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0
isig icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt
echoctl echoke
Kod icrnl
, “satır başlarını yeni satırlara çevir” anlamına gelir ve Unix gerçekten ^ J istediğinde, çalışan programdan ^ M yazabileceğinizi gizler. Eski klavyeler, ayrı bir Dönüş ve Giriş tuşuna sahipti (Geri Dönüş genellikle bir formla size gönderilen ve Enter'u gönderdi), ancak bugün genellikle yalnızca bir satır sonlandırma anahtarına sahibiz ve bu nedenle bu terminal ayarı iki anlamın birleştirilmesine yardımcı olur.
Ekle stty icrnl
adresinden Müşteri komutu .profile
veya .bashrc
bunun gerçekten sorun ayarı bulmak eğer.