建立使用者不顯示IP和機器名
CentOS下新增加一個使用者,登入進去會發現shell腳本資訊沒有顯示使用者名和主機名,反而顯示的是[email protected]
解決方案: 1.在建立使用者的~目錄下建立或者更改.bash_profile;這個過程中可能需要root使用者來建立或者修改 2.在.bash_profile中添加以下内容:
ip=`/sbin/ifconfig|egrep -A 1 'eth0\s|eth1\s'| grep inet| awk '{print $2}' | sed -e 's/addr://' |grep -v '127.0.0.1'| grep -v '0.0.0.0'| awk '{printf("<%s>", $1)}'`
export PS1="\[\033[0;33m\]\u@$ip \[\033[0;34m\] \w $?:\[\033[00m\] "
==================以下是詳細解說 環境變量PS1================================================
=============================================================================================
linux下環境變量PS1簡單來說就是設定指令提示符顯示的内容,如下:
PS1變量中提示符各項含義:
\d :代表日期,格式為weekday month date,例如:Wed Dec 12
\H :完整的主機名稱。例如:hostname是debian.linux
\h :僅取主機的第一個名字,如上例,則為debian,.linux則被省略
\t :顯示時間為24小時格式,如:HH:MM:SS
\T :顯示時間為12小時格式
\A :顯示時間為24小時格式:HH:MM
\u :目前使用者的賬号名稱 如:root
\v :BASH的版本資訊 如:3.2
\w :完整的工作目錄名稱。家目錄會以 ~代替 如顯示/etc/default/
\W :利用basename取得工作目錄名稱,是以隻會列出最後一個目錄 如上例則隻顯示default
\# :下達的第幾個指令
\$ :提示字元,如果是root時,提示符為:# ,普通使用者則為:$
但是發現指令提示都是一種顔色,這裡可以通過設定PS1變量使得提示符變成彩色,在PS1中設定字元序列顔色的格式為:\[\e[F;Bm\] 其中“F”為字型顔色,編号30~37;“B”為背景色,編号40~47。取消設定:\[\e[0m\]
每種字型顔色對應的代碼:
重置=0,黑色=30,紅色=31,綠色=32,黃色=33,藍色=34,洋紅=35.青色=36,白色=37
\e[1;31m設為紅色,\e[0m顔色重置。隻需将31替換成想要的顔色碼就可以了
要列印彩色背景對應的代碼:
重置=0,黑色=40,紅色=41,綠色=42,黃色=43,藍色=44,洋紅=45.青色=46,白色=47
B代碼 意義
0 OFF 1 高亮顯示 (常用) 4 underline 7 反白顯示
8 不可見
下面是将PS1變量提示符變成彩色
記得寫入在.bashrc檔案中,這樣每次開機都能看到。
轉載于:https://www.cnblogs.com/feiyun126/p/6125608.html