bash基本特性 bash基本介紹 bash是shell的一種,shell是電腦與用戶交互的主要介面,狹義上的shell指的是CLI(command line interface命令行介面),用戶輸入命令,bash判斷並執行。 bash的登陸提示 bash登陸時會有相應的提示,提示內容可以在相關文 ...
bash基本特性
bash基本介紹
bash是shell的一種,shell是電腦與用戶交互的主要介面,狹義上的shell指的是CLI(command line interface命令行介面),用戶輸入命令,bash判斷並執行。
bash的登陸提示
bash登陸時會有相應的提示,提示內容可以在相關文件中自定義,比如自定義一個歡迎頁面,centos的自定界面在/etc/motd文件,這個文件預設是空的,Ubuntu的自定界面在~/.profile文件中,但是本身這個文件是有很多內容的,要追加不能覆蓋。通過一些字元畫工具製作登陸歡迎界面是個不錯的選擇。
#CentOS
sudo echo "welcome to here" >>/etc/motd
#Ubuntu
echo "welcome to here" >>~/.profile
#雙引號中的內容可以替換為任意你想在登陸界面顯示的內容,Ubuntu下只針對當前登陸用戶
/etc/issue
#issue文件中也可以增加登陸時顯示的信息,同時可以使用\n,\l,t等選項分別顯示不同的內容
bash命令提示符
bash的命令提示符預設由用戶名+主機名+當前目錄+命令標識符組成
[root@centos ~]#
#此即為命令提示符的預設形式,命令標識符為#為root用戶為$則為普通用戶
命令提示符的樣式可由PS1這個變數定義
echo $PS1
#輸出PS1這個變數的值
PS1="\[\e[1;5;41;33m\][\u@\h \W]\\$\[\e[0m\]"
#將命令提示符的顏色更改為紅色背景,黃色字體並且閃動,這個時變數的臨時改變登出即丟失,如果想要永久改變需要寫入文件
#寫入文件
echo 'PS1="\[\e[1;5;41;33m\][\u@\h \W]\\$\[\e[0m\]"' >>/etc/profile.d/1.sh
#這裡的1.sh可以跟換成任意名稱的.sh雙引號總的內容可以更換為任意你想在登陸界面顯示的內容
主機名與系統內核版本
主機名是安裝時定義的名稱以.分割,命令提示符只顯示第一個.之前的內容。主機名需要有一定含義,主機名不能包含下劃線,應用短橫線代替。
#顯示主機名
hostname
#顯示Linux內核版本
uname -r
#顯示操作系統版本
lsb_release -a
#CentOS7上沒有預裝這個命令
cat /etc/redhat-release
PATH環境變數
echo $PATH
#列印環境變數
環境變數即為輸入命令時bash會去查找的地方,如果在變數中的位置有這條命令就會執行,否則會提示command not found錯誤
關閉和重啟電腦
init 0 #關閉電腦
init 1 #切換為單用戶模式
init 2
init 3 #切換為命令行模式
init 4
init 5 #切換為圖形界面模式
init 6 #重啟電腦
poweroff #關閉電源即為關閉電腦
halt #關閉電腦
reboot #重新啟動電腦
shutdown #-r重新啟動;-h關閉電腦;後面跟時間即可指定時間關機
內部命令、外部命令、命令別名與hash緩存機制
內部命令:bash自帶的命令,並且開機就載入在記憶體中
外部命令:外部命令使用時,從硬碟裡加載,如果命令不是內部命令,就從環境變數中找外部命令
type COMMAND #判斷命令屬於內部還是外部命令,內部命令會提示buttin外部命令則會提示路徑
enable #查看內部命令,-n禁用內部命令
alias #顯示含有別名的命令,NAME=”COMMAND“
unalias #取消命令別名
hash #查看已經緩存的外部命令,並且顯示擊中次數,-r清空緩存,-d刪除某條緩存
echo #輸出相應內容,既是內部命令又是外部命令
內部命令、外部命令和命令別名的命令執行順序:首先執行命令別名,其次執行內部命令,在hash中的外部命令,最後才是在環境變數尋找外部命令
基本命令彙總
lscpu #查看cpu信息
runlevel #運行級別查看分別是上一次運行級別,這次運行級別
tty #查看當前終端
free #查看記憶體信息,還有另一種方法cat /proc/meminfo
lsblk #查看硬碟關盤等設備信息
ip a #查看IP地址等信息
who #查看當前誰在登陸
whoami #查看執行此命令的用戶
who am i #查看執行命令用戶的詳細信息
w #查看當前此電腦有誰登陸,在執行什麼命令
echo '- - -' > /sys/class/scsi_host/host2/scan #觸發內核重新掃描硬碟
Xshell
Xshell是一款好用的windows的ssh軟體,可以連接Linux系統:
- 更改編碼以防止亂碼
- 完全版本可以將圖形程式在windows打開視窗
- 可以傳輸文件