让linux命令提示符显示IP和颜色,避免操作多服务器时混乱

简介: 管理很多台服务器时,经常需要打开多个终端窗口进行操作,一不小心就可能操作失误,本来是要在别的服务器上执行的命令,结果在另一台上的执行了。 平时打开多个窗口,要养成给不同窗口分配不同背景色的习惯。 不过我们还可以做一些其它设置,来区别不同的机器。
环境:oracle linux 6.4

管理很多台服务器时,经常需要打开多个终端窗口进行操作,一不小心就可能操作失误,本来是要在别的服务器上执行的命令,结果在另一台上的执行了。
平时打开多个窗口,要养成给不同窗口分配不同背景色的习惯。
不过我们还可以做一些其它设置,来区别不同的机器。

82a9a6a6ccb76ec205baf9394867b39665a90b8c

上面就是所管理的一台服务器的提示符显示。可以很方便的知道当前窗口是哪台服务器。

只要在/etc/bashrc中添加以下语句即可实现:

IP=$(/sbin/ifconfig eth0|awk ‘/inet addr:/ {print $2}’|cut -c6-)
export PS1=”[\u@\h(\[\e[31m\]$IP\[\e[m\]) \W]\\$”

解释说明:
PS1是linux里头的一个默认的环境变量,用来设置命令提示符的环境变量。
PS1能配置并显示在提示符中的:

\d :代表日期,格式为weekday month date,例如:”Mon Aug 1″
\H :完整的主机名称。例如:我的机器名称为:fc4.linux,则这个名称就是fc4.linux
\h :仅取主机的第一个名字,如上例,则为fc4,.linux则被省略
\t :显示时间为24小时格式,如:HH:MM:SS
\T :显示时间为12小时格式
\A :显示时间为24小时格式:HH:MM
\u :当前用户的账号名称
\v :BASH的版本信息
\w :完整的工作目录名称。家目录会以 ~代替
\W :利用basename取得工作目录名称,所以只会列出最后一个目录
\# :下达的第几个命令
\$ :提示字符,如果是root时,提示符为:# ,普通用户则为:$

自己可根据需要进行组合。
只要写入PS1中,把上面的代表符一个接一个的写进去就行了。
export PS1=”[\u@\h \W]\\$” 对应的就是 [用户名@主机名 路径]根据用户显示的符号(root用户显示#,普通用户显示$)

自己还可以写一些语句获取一些值,插入到这个提示符中。
比如就上面那个显示IP,让提示符中显示主机IP

IP=$(/sbin/ifconfig eth0|awk ‘/inet addr:/ {print $2}’|cut -c6-)
export PS1=”[\u@\h($IP) \W]\\$”
这样就会显示出来:[root@localhost(172.31.1.132) ~]#

根据需要选择让哪个用户实现这种效果,可以放到那个用户的.bash_profile中。
如果想让全部用户都用这种效果,就写入/etc/bashrc中。

现在再来讲颜色效果:

在PS1中设置字符序列颜色的格式为:
\[\e[F;Bm\] 其中“F”为字体颜色,编号30~37;“B”为背景色,编号40~47。
最后要加上\[\e[m\] 结束颜色设置。
颜色表

前景 背景 颜色
30 40 黑色
31 41 红色
32 42 绿色
33 43 黄色
34 44 蓝色
35 45 紫红色
36 46 青蓝色
37 47 白色

除了颜色,还有其它的显示格式:

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

现在可以把颜色设置和PS1结合起来:
[\e[31m\] 就代表红色
[\e[31;47m\] 代表白底红字

[\e[1m\]  高亮显示

export PS1=”[\u@\h(\[\e[31m\]$IP\[\e[m\]) \W]\\$” 让IP显示红色
[root@localhost(172.31.1.132) ~]#

export PS1=”[\u@\h(\[\e[4m\]$IP\[\e[m\]) \W]\\$” 让IP显示下划线

[root@localhost(172.31.1.132) ~]#

再扩展一下:
export PS1=”]\#[\u@\h(\[\e[31m\]$IP\[\e[m\]) \W]\\$”
\#显示现在运行的是第几条命令
3[root@localhost(172.31.1.132) ~]#

附:颜色这个还可以放到脚本中用echo显示
#! /bin/bash

echo -e “\e[31;47m”
echo “白底黑字”
echo -e “\e[0m”

72356a007c1a0126f9516d35fa43a47fc6f03098

相关文章
|
2天前
|
Linux
Linux下使用ls查看文件颜色全部为白色的解决方法,以及Linux中文件颜色介绍
Linux下使用ls查看文件颜色全部为白色的解决方法,以及Linux中文件颜色介绍
15 2
|
8天前
|
安全 Linux 调度
在Linux中,如何实现,每星期天早8点服务器定时重启?
在Linux中,如何实现,每星期天早8点服务器定时重启?
|
8天前
|
网络协议 Linux Docker
在Linux中,如何指定dns服务器,来解析某个域名?
在Linux中,如何指定dns服务器,来解析某个域名?
|
3天前
|
Linux
Linux 服务器下载百度网盘文件
本教程指导如何使用 `bypy` 库从百度网盘下载文件。首先通过 `pip install bypy` 安装库,接着运行 `bypy info` 获取登录链接并完成授权,最后将文件置于指定目录并通过 `bypy downdir /Ziya-13b-v1` 命令下载至本地。
14 1
Linux 服务器下载百度网盘文件
|
3天前
|
Shell Linux Perl
linux服务器自动生成本地快照
【8月更文挑战第28天】本文介绍了在Linux服务器上通过两种常见方式创建本地快照的方法:Btrfs文件系统与LVM。Btrfs原生支持快照功能,操作简单快捷;LVM则提供了灵活的逻辑卷管理,可在不影响原始数据的情况下创建快照。文章详细列出了创建、查看、挂载及清理快照的具体步骤,并提供了一个自动化的Shell脚本示例,便于用户根据需求定期创建快照并清理过期快照。
12 3
|
2天前
|
Linux
linux如何去掉目录背景颜色
linux如何去掉目录背景颜色
7 1
|
8天前
|
Ubuntu 网络协议 Linux
Linux下快速搭建七日杀官方私人服务器教程
本文提供了一份详尽的《七日杀》服务器搭建指南,专为Linux系统设计。教程分为九大部分,涵盖从前期准备到服务器维护的全过程。主要内容包括:选择具备公网IP的云服务器、安装Ubuntu 20 X64系统、下载SteamCMD等必备软件;详细指导如何配置服务器、设置防火墙及端口规则、启动与关闭服务器;此外还提供了服务器管理、环境配置(如设置swap分区)等实用技巧。适合有一定Linux基础的玩家参考实践。
|
8天前
|
机器学习/深度学习 Ubuntu Linux
在Linux中,如何按照该要求抓包:只过滤出访问http服务的,目标ip为192.168.0.111,一共抓1000个包,并且保存到1.cap文件中?
在Linux中,如何按照该要求抓包:只过滤出访问http服务的,目标ip为192.168.0.111,一共抓1000个包,并且保存到1.cap文件中?
|
2天前
|
缓存 Linux 调度
Linux服务器如何查看CPU占用率、内存占用、带宽占用
Linux服务器如何查看CPU占用率、内存占用、带宽占用
8 0
|
3天前
|
Linux 网络安全 网络架构
如何处理在学校Linux连接不上服务器
如何处理在学校Linux连接不上服务器
16 0
下一篇
云函数