簡介:

Bash 為 Bourne-Again SHell 的簡稱,據說由 Bourne shell 改良而來

詳細資訊可以參考:

https://zh.wikipedia.org/wiki/Bash

說明:

本次重點主要在 ~/.bashrc 這個設定的內容介紹,但會稍微介紹一下其他設定檔的用途

"~" 指該使用者的家目錄,可以在 /etc/passwd 查到使用者家目錄

"." 凡是"."開頭的,在Linux下代表隱藏檔

.bash_history:使用過的歷史紀錄

.bash_logout:登出時,執行的內容

.bash_profile:登入時,執行的內容,通常預設載入.bashrc

.bashrc:BASH主要設定的位置,也是本次要介紹的重點

顏色與顯示參數:

這裡以CentOS 7 為範例,預設 Shell 就是 BASH

以下內容是我常用的.bashrc內容,因為是 CentOS 7 專用

所以有些 Alias 設定在其他的 Linux Distribution 是不能使用的

# vim ~/.bashrc
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
export PATH

PS1='\[\033[01;32m\]\u\[\033[00m\]@\[\033[01;34m\]\h\[\033[00m\]:[\[\033[01;35m\]\W\[\033[00m\]]\$ '                

TERM="xterm-256color"

alias _="sudo"

# ls, the common ones I use a lot shortened for rapid fire usage
alias l='ls -lFh'
alias la='ls -lAFh'
alias lr='ls -tRFh'
alias lt='ls -ltFh'
alias ll='ls -lh'
alias ldot='ls -ld .*'
alias lS='ls -1FSsh'
alias lart='ls -1Fcart'
alias lrt='ls -1Fcrt'

alias s='ssh'

alias bashrc='$EDITOR ~/.bashrc'

alias grep='grep --color'
alias sgrep='grep -R -n -H -C 5 --exclude-dir={.git,.svn,CVS} '

# Command line head / tail shortcuts

alias dud='du -d 1 -h'
alias duf='du -sh *'
alias fd='find . -type d -name'
alias ff='find . -type f -name'

alias h='history'
alias help='man'
alias p='ps aux'
alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'

alias screlo='systemctl daemon-reload'
alias sclist='systemctl list-unit-files'
alias sct='systemctl status'
alias sce='systemctl enable'
alias scd='systemctl disable'
alias scr='systemctl restart'
alias scs='systemctl start'
alias sch='systemctl stop'

alias sethost='hostnamectl set-hostname'
# 這邊需要注意的網卡的設定,需依照實際環境進行設定
# 多張網卡可以使用setnet1、setnet2,以此類推
alias setnet='vim /etc/sysconfig/network-scripts/ifcfg-ens160'

顏色設定說明:

\e[0;30m = 深灰色
\e[1;30m = 粗體身灰色
\e[0;31m = 紅色
\e[1;31m = 粗體紅色
\e[0;32m = 綠色
\e[1;32m = 粗體綠色
\e[0;33m = 黃色
\e[1;33m = 粗體黃色
\e[0;34m = 藍色
\e[1;34m = 粗體藍色
\e[0;35m = 紫色
\e[1;35m = 粗體紫色
\e[0;36m = 藍綠色
\e[1;36m = 粗體藍綠色
\e[0;37m = 淺灰色
\e[1;37m = 粗體淺灰色

PS1可使用的參數:

\d 顯示星期月日 (e.g.,三 1月 10)

\h 顯示簡短的 hostname 到第一個" . “之前 (e.g.,vm1)
\H 顯示完整的 hostname (e.g.,vm1.kenwu0310.wordpress.com)

\j 當前 shell 所管理的job數量

\l 該 shell 終端設備的基本名稱

\s 該 shell 的名字

\t 時間格式為 24小時制 (e.g.,HH:MM:SS)
\T 時間格式為 12小時制 (e.g.,HH:MM:SS)
\@ 時間格式為 am\pm 制

\u 當前使用者名稱

\v 當前BASH的主要版本號

\V 當前BASH的詳細版本號

\w 當前的工作目錄
\W當前的詳細工作目錄,如同$pwd的顯示

\! 當前指令的歷史紀錄編號
\# 當前指令的編號

\$ uid=0時,顯示為"#",其餘為"$"

\nnn 使用八進位顯示字元

\n 新的一行作為開始,類似Enter
\r 回到最前面的字元
\e 跳脫字元,等於" \033 "
\a 一個bell character
\\ 等於" \ "

\[ 特殊字元的前括號

\] 特殊字元的後括號

資料來源:

https://ss64.com/bash/syntax-prompt.html

廣告

對「Linux – BASH 環境設定 (更新內容 – 2018/12/07)」的一則回應

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com 標誌

您的留言將使用 WordPress.com 帳號。 登出 /  變更 )

Google photo

您的留言將使用 Google 帳號。 登出 /  變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 /  變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 /  變更 )

連結到 %s