欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Linux终端个性化配置

程序员文章站 2024-02-13 23:13:46
...

使用linux系统将近一年了,今天在做项目时注意到命令终端的格式和颜色均是可以配置,故在网上学习了一番,并写下此博客作为学习笔记。简单分析终端颜色和格式的默认配置代码,然后展示了语法规则,最终给出了自己使用的配置方案。

一、了解配置文件

一般Linux中的配置文件大多以点开头,而且多以rc结尾。
  • 比如vim的配置文件 .vimrc,bash shell的配置文件.bashrc,等等。

  • 像这样的配置文件,如果用ls -l命令是列不出来的,需要用ls -a来列出。

  • “rc”,它是“runcomm”的缩写――即“run command”(运行命令)的简写。

“rc” 是取自 “runcom”, 来自麻省理工学院在 1965 年发展的 CTSS系统。相关文献曾记载这一段话:”具有从档案中取出一系列命令来执行的功能;这称为 “run commands” 又称为 “runcom”,而这种档案又称为一个 runcom (a runcom)。

” rc”是很多脚本类文件的后缀,这些脚本通常在程序的启动阶段被调用,通常是Linux系统启动时。
  • 如/etc/rc(连接到/etc/rc.d/rc)是Linux启动的主脚本,而.bashrc是当Linux的bash shell启动后所运行的脚本。

  • Linux或Unix的许多程序在启动时,都需要“rc”后缀的初始文件或配置文件。

二、.bashrc配置终端

终端,有一个配置文件,叫做.bashrc,这是用户个人的终端配置文件。

打开家目录下的终端配置文件看看,只要输入以下命令:

nano ~/.bashrc 或者 vi ~/.bashrc

Shell是一个用户跟操作系统之间的一个命令解释器,也就是用户与Linux操作系统之间沟通的桥梁。
  • bash是最常用的一种shell程序,Ubuntu和大部分常见的Linux发行版默认的shell程序就是bash。

  • .bashrc就是bash这个shell程序的配置文件。

三、默认配置

在linux系统中,用户的配置文件有多个,一般熟悉的有~/ .bashrc文件,我们可以在这个文件中,找到终端的配置。对于终端的显示,相信大家都不陌生,例如:

# If this is an xterm set the title to [email protected]:dir
  case "$TERM" in
  xterm*|rxvt*)
      PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\[email protected]\h: \w\a\]$PS1"
      ;;
  *)
      ;;
  esac

最终可以发现PS1对终端的颜色和格式进行了设置。

四、颜色设置方式

颜色 = \033[控制代码;前景;背景m

控制代码

控制代码 意义
0 OFF
1 高亮显示
4 underline
5 闪烁
7 反白显示
8 不可见

颜色参数

颜色 前景 背景
黑色 30 40
紅色 31 41
绿色 32 42
黃色 33 43
蓝色 34 44
紫紅色 35 45
青蓝色 36 46
白色 37 47
透明色 1
结合上面这两张表的信息,我们就可以进行颜色和动作定制了。
\033[01;32m //高亮显示绿色
\033[0m     //清除颜色设定,用来控制颜色设定影响的范围
还需注意的是:在实际使用过程中,均需在颜色设定码两边加上方括号( “[ , ]” ), 原因见下表:特殊字符。

五、特殊字符

特殊字符 意义
\e ASCII转义字符(也可以键入 \033)
\[ 将非打印字符包起来,比如:颜色序列前后
\] 将非打印字符包起来,比如:颜色序列前后
\n 换行符
\u 用户名
\w 完整的工作目录名称 (如 “/home/drobbins”)
\W 利用basename取得工作目录名称,所以只会列出最后一个目录
\ $ 用户提示符,普通用户”$”;超级用户”#”
\h 主机名的第一部分(如 “mybox”)
\H 主机的全称(如 “mybox.mydomain.com”)
\d 代表日期,格式为weekday month date,例如:”Mon Aug 1”
\t 显示时间为24小时格式,如:HH:MM:SS
\T 显示时间为12小时格式
\A 显示时间为24小时格式:HH:MM
\v BASH的版本信息
\ # 下达的第几个命令
到此为止,我们已经了解所有相关的语法规则,再次来看PS1的设置
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '

六、分解展示

对上面的PS1进行分解:
代码片断 意义
[ \033[01;32m\ ] 设定颜色参数,高亮显示绿色
\u 显示用户名
@ 显示 ‘@’
\h 显示用户组
[\033[00m\ ] 去除颜色设定
: 显示 ‘:’
[ \033[01;34m\ ] 设定颜色参数,高亮显示蓝色
\w 显示当前文件路径
[ \033[00m\ ] 去除颜色设定
\ $ 显示用户提示符‘#’ or ‘$’

———————————————————————————————————————————————————–

七、推荐配置

Linux终端个性化配置
下面是我的配置代码,直接放在.bashrc文件末尾,就能使用。

PS1="\[\033[1;36m\]\u\[\033[1;32m\][\w]\[\033[1;33m\]->\[\033[0m\]"

添加代码后要记得更新 : source ~/.bashrc

———————————————————————————————————————————————————–