在很多地方,取决于

在虚拟终端和真实终端上,TERM环境变量由链接到的程序设置login,并一直继承到交互式外壳程序,该交互式外壳程序一旦登录便会执行。确切地说,发生这种情况的位置因系统而异,并且取决于终端的类型。

实际,串行终端的类型可能会有所不同,具体取决于电线另一端的情况。因此,通常getty使用指定终端类型的参数来调用程序,或者TERM从服务管理器的服务配置数据中将程序传递给该程序。

在van Smoorenburg init系统上,您可以在/etc/inittab条目中看到此内容,这些条目将按照

S0:3:重生:/ sbin / agetty ttyS0 9600 vt100-nav的最后一个参数agetty在该行,vt100-nav是用于终端类型组/dev/ttyS0。所以/etc/inittab是在哪里改变终端类型用于在这样的系统真实终端。

在系统系统上,可以在/usr/lib/systemd/system/serial-getty@.service单元文件中看到此信息(/lib/systemd/system/serial-getty@.service在未合并的系统上),该文件显示为

环境= TERM = vt100TERM在传递给的环境中设置变量agetty。在此服务单元文件中,可以更改此类系统上实际终端的终端类型。请注意,它适用于采用此服务单元模板的所有实际终端。(要仅对单个终端进行更改,必须手动实例化模板。)

在BSD上,init从/etc/ttys数据库中每个终端条目的第三个字段中获取终端类型,并在执行该终端TERM的环境中从中进行设置getty。所以/etc/ttys是其中一个改变用于在BSD系统实际终端的终端类型。

如前所述,内核虚拟终端具有固定类型。与NetBSD可以动态更改内核虚拟终端类型不同,Linux和其他BSD具有在内核的内置终端仿真程序中实现的单个固定终端类型。在Linux上,该类型与linuxterminfo数据库中的类型匹配。(xterm从版本9开始,FreeBSD的内核终端仿真是一个有限的子集。)

在使用mingetty或vc-get-tty(从nosh程序包中)的系统上,程序“知道”它只能与虚拟终端通信,并且他们硬连接适合于该程序所编译的操作系统的“已知”虚拟终端类型。

在系统系统上,可以在/usr/lib/systemd/system/getty@.service单元文件中看到此信息(/lib/systemd/system/getty@.service在未合并的系统上),该文件显示为

环境= TERM = LinuxTERM在传递给的环境中设置变量agetty。

对于内核虚拟终端,不会更改终端类型。毕竟,内核中的终端仿真器程序不会更改。更改类型是不正确的。特别是,这会搞乱光标/编辑键CSI序列识别。的linuxLinux内核终端仿真器发送CSI序列是不同的xterm或vt100通过GUI终端仿真器程序在DEC VT模式发送CSI序列。

您的GUI终端仿真器是从SSHdæmon到screen使用伪终端的众多程序之一。终端类型是什么,取决于在伪终端的主端上运行的终端仿真器程序以及它的配置方式。大多数GUI终端仿真器将在从属端启动一个程序,该TERM变量的值与其在主端的终端仿真相匹配。诸如SSH服务器之类的程序将尝试“通过”连接客户端上的终端类型。通常在终端仿真中有一些菜单或配置选项可供选择。

抓手

检测颜色功能的正确方法是不要硬连接脚本中的终端类型列表。有很多支持颜色的终端类型。

正确的方法是查看termcap / terminfo关于您的终端类型的内容。颜色= 0

如果tput Co> / dev / null 2>&1

然后

测试“`tput Co`” -gt 2 && colour = 1

elif tput颜色> / dev / null 2>&1

然后

测试“`tput colors`” -gt 2 && colour = 1

科幻

进一步阅读

乔纳森·德·博伊恩·波拉德(2018)。TERM。nosh指南。软件。

linux 环境变量 term,TERM环境变量默认值在哪里设置?相关推荐

  1. MySQL 字段默认值该如何设置

    MySQL 字段默认值该如何设置 前言: 在 MySQL 中,我们可以为表字段设置默认值,在表中插入一条新记录时,如果没有为某个字段赋值,系统就会自动为这个字段插入默认值.关于默认值,有些知识还是需要 ...

  2. php要输出为空值怎么写,thinkphp3.0基础模板引擎变量为空时输出默认值

    在thinkphp的模板引擎中,如果输出的变量是空的,但我们的设计需求又不想让这里空出一大块,需要给这个变量指定一个默认值,也就是说,如果 这个变量为空,就显示我们指定的默认值.那么这个可不可以在th ...

  3. 【环境配置】MySQL timestamp的默认值设置问题

    环境: MacBook Pro 15 jdk8 MySQL:5.7.22 问题: mysql 5.7 以上版本,增加了2条严格的时间格式的限制(NO_ZERO_IN_DATE,NO_ZERO_DATE ...

  4. 008 查看套接字选项是否受支持(获取当前环境下套接字选项默认值)

    代码来源:<UNIX网络编程 卷1:套接字联网API> 说明:为以后查看套接字默认值使用 代码: 1 /* include checkopts1 */ 2 /* *INDENT-OFF* ...

  5. jpa mysql timestamp_Java JPA设置默认值、Timestamp设置、自动获取时间

    设置默认值 @Column(name="state",columnDefinition="tinyint default 0") private Integer ...

  6. was控制台java虚拟机默认值_JVM 参数设置

    不管是YGC还是Full GC,GC过程中都会对导致程序运行中中断,正确的选择不同的GC策略,调整JVM.GC的参数,可以极大的减少由于GC工作,而导致的程序运行中断方面的问题,进而适当的提高Java ...

  7. mysql中IFNULL(字段名,默认值) 给null设置默认值

    SELECT IFNULL(字段名,默认值)  as 别名 FROM 表名;

  8. html下拉框设置默认值_如何设置HTML select下拉框的默认值?

    HTML中的select标签用于创建可选择选项的下拉列表:option标签包含选定时将使用的值.那么如何来设置select下拉框里的默认值?下面本篇文章就来给大家介绍一下,希望对大家有所帮助. 我们可 ...

  9. java设置默认值_Spring @Value 设置默认值的实现

    1.概览 Spring 的 @Vaule 注解提供了一种便捷的方法可以让属性值注入到组件中,当属性值不存在的时候提供一个默认值也是非常好用的 这就是我们这篇文章所专注的,如何给 @Vaule 注解指定 ...

最新文章

  1. python使用matplotlib可视化subplots绘制子图、自定义几行几列子图,如果M行N列,那么最终包含M*N个子图、在指定的子图中添加可视化结果
  2. 变量相关命令(env,export,set,read, array, declare)
  3. Java操作XML文件 dom4j 篇【转】
  4. ClickHouse 分布式原理:Distributed引擎
  5. CSS3选择非第一个子元素
  6. ub c语言,操作系统之LRU算法 C语言链表实现
  7. 用c语言程序算自己的年龄,新手编的小程序:计算年龄和出生后经历的天数的小程序...
  8. php file del 方法,php怎么遍历文件删除指定字符
  9. Java 算法 理财计划
  10. 【Clickhouse】Clickhouse 外部存储引擎之 File
  11. 2021李宏毅机器学习课程笔记——Explainable AI
  12. android项目中导入actionbarsherlock 需要注意的地方
  13. 09.VMWare虚拟机copy后网卡不是eth0解决办法
  14. 部编版是什么版本_部编版教材和人教版教材有什么区别
  15. 卡密激活php代码,全自动PHP授权检测系统,卡密功能自助授权功能源码
  16. 苹果手机怎么查看已连接的wifi密码_如何查看已连接的WiFi密码,可以这样做!...
  17. Photoneo Montion L3D相机安装和注意事项
  18. BootStrap之导航navigation
  19. cocos2dx ipv6处理
  20. win8计算机配置管理模板,win8.1用户帐户配置管理图文详解

热门文章

  1. Stimulsoft报表操作笔记(一):统计
  2. Javascript常用事件大全
  3. 赢信Ping32 行为审计-聊天内容监控
  4. NCH WavePad for Mac(音频编辑软件)
  5. 点击图片 图片放大 带有黑色背景图片
  6. EGE 专栏博客写作计划
  7. 什么叫mcu?mcu和普通芯片的区别是什么?
  8. 学习笔记之electronic(3)——可编程逻辑部件
  9. 复制图片上的文字,通过Microsoft Onenote将图片上的文字复制出来
  10. 2022年安全员-B证考试题及安全员-B证模拟考试题