การตั้งค่าตัวแปรเชลล์ TERM เริ่มต้นเป็นอย่างไร


13

หลังจากอัปเกรดเป็นไม่ฝักใฝ่ฝ่ายใดฉันได้ตั้งค่าตัวแปร TERM ของฉันเป็น 'ใบ้' สิ่งนี้ไม่ได้เกิดขึ้นกับ dir บ้านเดิมที่รันจาก Lucid และฉันไม่ได้เปลี่ยนอะไรที่เกี่ยวข้องกับ TERM ด้วยตนเอง

แนวคิดใดที่จะตั้งค่าตัวแปร TERM

คำตอบ:


13

หากต้องการอธิบายอย่างละเอียดเกี่ยวกับสิ่งที่ Gilles พูดสมมติว่าคุณกำลังเชื่อมต่อระยะไกลกับอูบุนตูจาก Windows โดยใช้ Putty

ในตัวเลือกการกำหนดค่าแบบพุตภายใต้การเชื่อมต่อ -> ข้อมูลมีการตั้งค่าที่เรียกว่าสตริงประเภทเทอร์มินัล คุณสามารถตั้งค่า TERM ของคุณที่นั่นและโป๊วแนะนำให้ SSH เพื่อตั้งค่าตัวแปรสภาพแวดล้อมนั้น เมื่อถึงจุดหนึ่งหลังจากนั้นเชลล์ของคุณจะถูกดำเนินการอาจเป็น / bin / bash และได้รับสภาพแวดล้อมจากกระบวนการหลักอาจเป็นกระบวนการ sshd

เช่นเดียวกันถือเป็นจริงถ้าคุณ ssh จากกล่องลินุกซ์ระยะไกลเพียงว่าตัวแปรสภาพแวดล้อมในท้องถิ่นจะถูกส่งผ่านผ่าน ssh ไปยังการเชื่อมต่อระยะไกล

ในกรณีของเทอร์มินัลอีมูเลเตอร์มันเป็นงานของเทอร์มินัลอีมูเลเตอร์เพื่อตั้งค่าตัวแปรสภาพแวดล้อม TERM เช่น getty ตั้ง TERM เป็น "linux" และส้อมกระบวนการเชลล์ (/ bin / bash) หรือ gnome-terminal ตั้งค่า TERM เป็น "xterm" และส้อมกระบวนการเชลล์


ฉันได้ตรวจสอบแล้วและ gnome-terminal นั้นใช้งานได้ดีมันเป็นข้อผิดพลาด "จำลอง" จริงๆ ฉันใช้เทอร์มิเนเตอร์ ขอบคุณ
João Pinto

9

ที่จะตอบคำถามของคุณอย่างแท้จริงที่จำลอง terminal ควรจะชุด$TERM

เพื่อแก้ปัญหาของคุณอย่างน้อยต้องรู้ว่าเทอร์มินัลอีมูเลเตอร์ใดที่คุณใช้ มันอาจจะเป็นข้อผิดพลาดหรือการกำหนดค่าในจำลอง terminal หรือมีปัญหากับเปลือกของคุณเริ่มต้นไฟล์ (อาจจะ~/.bashrcแต่อาจเป็นไปได้~/.bash_profile, /etc/bashrc, /etc/profile, ... )

¹ สมมติว่าคุณไม่ได้ใช้เทอร์มินัลฮาร์ดแวร์ แล้วมันจะเป็นอาร์กิวเมนต์ที่gettyเรียกจากinittab(รุ่นเก่าโดยใช้ SysVinit) หรือ/etc/init/tty*.conf(Ubuntu ≥9.10ใช้ Upstart)


2
getty ไม่ได้ถูกเรียกจาก inittab, Ubuntu ไม่มี inittab อีกต่อไป! คอนโซลถูกกำหนดโดย /etc/init/tty*.conf
LassePoulsen

4
ผมคิดว่าคุณจะได้รับป้ายสำหรับการใช้งานครั้งแรกที่ผมได้เห็นเชิงอรรถในคำตอบ :-)
poolie

ตอนนี้มันเป็น 15.04+ พุ่งพรวดไม่เป็นค่าเริ่มต้นอีกต่อไป (อีกแล้ว) และ systemd จัดการมันใน getty @ service ฉันยังคงคุ้นเคยกับการเปลี่ยนแปลงนั้น (มันเป็นตัวเลขเมื่อฉันเรียนรู้ทุกอย่างเกี่ยวกับการพุ่งพรวดเข้าออกตอนนี้ฉันมี ที่จะทำเช่นเดียวกันกับ systemd ... Meh !!)
osirisgothra

1

หากคุณต้องการเปลี่ยนเครื่องตรวจสอบให้แน่ใจว่าคุณได้ตรวจสอบฟังก์ชั่นการอัพเดททางเลือก

ตัวอย่างเช่น

update-alternatives --config x-terminal-emulator

ตัวเลือกเริ่มต้นของระบบที่หลากหลายใน Ubuntu ตั้งค่าด้วยวิธีนี้ อีกอันที่พบได้ทั่วไปคือ www-browser

update-alternatives --config x-www-browser
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.