ในขณะนี้ฉันมีปัญหานี้ถาวรบนเทอร์มินัลทั้งหมดของฉันจากค่าเริ่มต้น gnome และ tilda ซึ่งฉันทั้งสองใช้กับสิ่งที่ฉันเพิ่งให้การหมุนวนอย่างรวดเร็วซึ่งอินพุตของฉันจะเขียนทับจุดเริ่มต้นของสายเมื่อมันควร ตัดและตัดเฉพาะบรรทัดถัดไป
การกด Ctrl-A เพื่อกลับไปที่จุดเริ่มต้นของบรรทัดจะคืนค่าให้ฉันที่ใดที่หนึ่งในบรรทัดแทนอินพุตบรรทัดแรกของฉัน
เนื่องจากนี่เป็นคำอธิบายที่ไม่ดีและมองเห็นได้ยากนี่คือลักษณะที่ปรากฏ:
ไม่มีใครรู้ว่านี่คืออะไร? มันไม่ได้เกิดขึ้นภายใต้สถานการณ์บางอย่างเท่านั้นมันเป็นสิ่งถาวรที่มักจะมีตั้งแต่เริ่มต้นจนสิ้นสุดของทุกเซสชันในทุกเทอร์มินัลอีมูเลเตอร์
ผลลัพธ์ของprintf "%s\n" "$PS1" "$COLUMNS"
:
leod:~$ printf "%s\n" "$PS1" "$COLUMNS"
\[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$
80
ผลลัพธ์ของstty -a
:
leod:~$ stty -a
speed 38400 baud; rows 11; columns 140; 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; discard = ^O; min = 1; time = 0;
-parenb -parodd -cmspar 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 -flusho -extproc
test
ออกจากเทอร์มินัลในสภาวะที่ไม่เสถียร หากเป็นสคริปต์คุณสามารถรวมไว้ในคำถามของคุณได้หรือไม่ จะเกิดอะไรขึ้นถ้าคุณเริ่มพิมพ์โดยไม่เรียกใช้test
ก่อน
stty -a
เช่นกันได้ไหม
type -a test
แทน
printf "%q\n" "$PS1"
อะไร อาจมีลำดับการหลบหลีกแบบดิบภายใน PS1 และ%s
ทำให้พวกมันเหมือนเดิม (ซึ่งอาจจะเปลี่ยนสีไปมา %q
อ้างอิงอักขระที่ไม่สามารถพิมพ์ได้ทั้งหมดในวิธีที่อ่านได้
printf "%s\n" "$PS1" "$COLUMNS"
โปรด