ฉันเพิ่งอัพเกรด (พร้อมapt-get dist-upgrade
) กล่อง Kubuntu และ Lubuntu Linux ของฉันและตอนนี้ทุกครั้งที่ลงชื่อเข้าใช้หนึ่งในเครื่องเหล่านี้ฉันได้รับข้อความนี้:
tput: No value for $TERM and no -T specified
นี่คือภาพหน้าจอของข้อความที่แน่นอน:
สิ่งนี้เกิดขึ้นทั้งกับเครื่อง Lubuntu และเครื่อง Kubuntu ของฉันและมันก็ไม่มีปัญหาจนกระทั่งหลังจากที่ฉันอัพเกรด ดังนั้นฉันสงสัยว่ามันไม่ใช่ข้อผิดพลาดของผู้ใช้
ฉันจะแก้ไขสิ่งนี้ได้อย่างไร
UPDATE
ฉันติดตามไฟล์นี้เป็นไฟล์. bashrc ของฉันซึ่งกำลังถูกเรียกโดยไฟล์. profile ของฉัน ถึงแม้ว่าความจริงที่ว่าไฟล์. bashrc ของฉันจะทำงานเมื่อฉันเข้าสู่ระบบ GUI ในขณะที่มันไม่ได้ก่อนที่ฉันจะอัพเกรดเป็นบิตแปลก และไม่ฉันยังไม่ได้แก้ไขไฟล์. bashrc หรือ. profile ของฉันเมื่อเร็ว ๆ นี้ นอกจากนี้ทุบตีไม่ใช่เปลือกเริ่มต้นของฉัน
ปัญหาคือฉันกำลังโทรtput
ในไฟล์. bashrc ของฉันเพื่อตั้งค่าตัวแปรเพื่อใช้ในการเพิ่มสีให้กับพรอมต์ แต่ในเวลา (ไม่เหมาะสม) เมื่อไฟล์. bashrc ของฉันเริ่มทำงาน$TERM
ไม่ได้ตั้งค่าไว้
fgRed=$(tput setaf 1) ; fgGreen=$(tput setaf 2) ; fgBlue=$(tput setaf 4)
fgMagenta=$(tput setaf 5) ; fgYellow=$(tput setaf 3) ; fgCyan=$(tput setaf 6)
fgWhite=$(tput setaf 7) ; fgBlack=$(tput setaf 0)
bgRed=$(tput setab 1) ; bgGreen=$(tput setab 2) ; bgBlue=$(tput setab 4)
bgMagenta=$(tput setab 5) ; bgYellow=$(tput setab 3) ; bgCyan=$(tput setab 6)
bgWhite=$(tput setab 7) ; bgBlack=$(tput setab 0)
อัปเดตคำถาม:ฉันจะแก้ไขได้อย่างไร ฉันควรตั้ง$TERM
ตัวเองเหรอ? หรือฉันควรจะไม่ตั้งค่าตัวแปรเหล่านี้หาก$TERM
ไม่ได้ตั้งไว้?
อัพเดท 2
ทางออกหนึ่งที่ฉันพยายามคือตรวจสอบว่า$TERM
ได้ตั้งค่าไว้หรือไม่ แต่สิ่งนี้ดูเหมือนจะไม่ทำงาน ฉันยังคงได้รับข้อความแสดงข้อผิดพลาดเดียวกัน นี่คือรหัส:
if [ ! "$TERM" = "" ]; then
#Do stuff here
fi
เห็นได้ชัดว่า$TERM
มีการตั้งค่า แต่tput
ก็ยังสรุปได้ว่ามันไม่ได้
.profile
ทำงานโดยไม่คำนึงถึงเปลือกเริ่มต้น