只改 root 用户登录后的命令行显示,所有服务不受影响,永久生效。
步骤 1:编辑 root 的 bash 配置文件
nano /root/.bashrc
步骤 2:文件末尾粘贴完整代码
# 获取内网IP函数(自动排除127.0.0.1,取第一个网卡IP)
get_lan_ip() {
hostname -I | awk '{print $1}'
}
# 自定义提示符:\u@主机名.IP:路径## \h = 系统短主机名,$(get_lan_ip) = 内网IP export PS1="\[\033[01;32m\]\u@\h.\$(get_lan_ip)\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]# "
彩色版本(绿用户名主机、蓝路径),运维多服务器辨识度高;
纯黑白极简版(替换上面 export 行):
export PS1="\u@\h.\$(get_lan_ip):\w# "
步骤 3:保存并立即生效
Ctrl+O回车保存,Ctrl+X退出编辑器重载配置:
source /root/.bashrc
效果展示
你的主机名是
openlist,IP192.168.3.100,提示符直接变成:t@openlist.192.168.3.100:~#
多网卡兼容补充
如果服务器有多张网卡,想固定读取 eth0 的 IP,替换
get_lan_ip函数:get_lan_ip() {
ip -4 addr show eth0 | grep -oP '(?<=inet\s)\d+(\.\d+){3}' | head -n1}方案二:全局所有用户都生效(包含普通用户)
如果希望任意账号登录都显示
用户名@主机名.IP,修改全局 bash 配置:nano /etc/profile
末尾添加同样函数 + PS1 导出,执行生效:
source /etc/profile
- 上一篇:邮件域名的记录设置
- 下一篇:一个docker的配置文件样例
- 发表评论
- 查看评论
【暂无评论,快来评论吧!】发表评论: