檢視 Shell
Shell 是一個程式,一般都是放在
/bin
或者
/user/bin
目錄下,目前 Linux 系統可用的 Shell 都記錄在
/etc/shells
檔案中。
/etc/shells
是一個純文字檔案,你可以在圖形界面下打開它,也可以使用 cat 指令檢視它。
通過 cat 指令來檢視目前 Linux 系統的可用 Shell:
$ cat /etc/shells
/bin/sh
/bin/bash
/sbin/nologin
/usr/bin/sh
/usr/bin/bash
/usr/sbin/nologin
在現代的 Linux 上,sh 已經被 bash 代替,
/bin/sh
往往是指向
/bin/bash
的符号連結。
如果你希望檢視目前 Linux 的預設 Shell,那麼可以輸出 SHELL 環境變量:
$ echo $SHELL
/bin/bash
輸出結果表明預設的 Shell 是 bash。
Shell 提示符
對于普通使用者,Base shell 預設的提示符是美元符号
$
;對于超級使用者(root 使用者),Bash Shell 預設的提示符是井号
#
。該符号表示 Shell 等待輸入指令。
[root@localhost ~]#
這種格式包含了以下三個方面的資訊:
- 啟動 Shell 的使用者名,也即 mozhiyan;
- 本地主機名稱,也即 localhost;
- 目前目錄,波浪号
是主目錄的簡寫表示法。~
Shell 通過
PS1
和
PS2
兩個環境變量來控制提示符格式:
- PS1 控制最外層指令行的提示符格式。
- PS2 控制第二層指令行的提示符格式。
要顯示提示符的目前格式,可以使用 echo 輸出 PS1 和 PS2:
[root@localhost ~]# echo $PS1
[\u@\h \W]\$
[root@localhost ~]# echo $PS2
>
字元 | 描述 |
---|---|
\a | 鈴聲字元 |
\d | 格式為“日 月 年”的日期 |
\e | ASCII轉義字元 |
\h | 本地主機名 |
\H | 完全合格的限定域主機名 |
\j | shell目前管理的作業數 |
\1 | shell終端裝置名的基本名稱 |
\n | ASCII換行字元 |
\r | ASCII回車 |
\s | shell的名稱 |
\t | 格式為“小時:分鐘:秒”的24小時制的目前時間 |
\T | 格式為“小時:分鐘:秒”的12小時制的目前時間 |
\@ | 格式為am/pm的12小時制的目前時間 |
\u | 目前使用者的使用者名 |
\v | bash shell的版本 |
\V | bash shell的釋出級别 |
\w | 目前工作目錄 |
\W | 目前工作目錄的基本名稱 |
\! | 該指令的bash shell曆史數 |
\# | 該指令的指令數量 |
\$ | 如果是普通使用者,則為美元符号 ;如果超級使用者(root 使用者),則為井号 。 |
\nnn | 對應于八進制值 nnn 的字元 |
\\ | 斜杠 |
\[ | 控制碼序列的開頭 |
\] | 控制碼序列的結尾 |
[root@localhost ~]# PS1="[\t][\u]\$ "
[22:12:45][root]$
原創文章請随便轉載。願和大家分享,并且一起進步。-- 江 coder