& lt& lt-EOF
文件結束
編寫壹個簡單的bash文件,如下所示:
我們可以看到,當bash文件用。/,不進入/home目錄,我們稱之為在子shell中執行,不影響當前shell狀態(有時執行成功的原因沒有影響)。然而,無論是。執行或源碼執行,我們已經成功進入了home路徑,我們稱之為在當前shell中執行。
shell中的Sunlog不加載用戶的shell。
Su-loginshell加載用戶的shell。
可以清楚的看到,當用壹個不加載用戶的shell加載用戶時,它目前不會有加載用戶的權限,很像windows中的visitor模式。
歷史歷史緩存
~/.bash_history在退出後寫入緩存。
~/.退出後執行bash_logout。
在這個層面上,順便看圖了解壹下linux系統的引導過程。紅字:系統層引導/切換用戶歷史;藍字:用戶層啟動/切換的用戶過程;黃色字符:用戶層的關閉過程。
我曾經玩過壹個遊戲:當用戶指令關機時,會有壹輛小火車經過,那麽我們可以在裏面寫調用小火車經過的程序調用?
1,自動補充命令和文件移位
2.命令的歷史記憶功能:上下鍵!對要執行的訂單數量進行編號,
!String找到了以string,!& amp最後壹個命令的最後壹個參數,
!!執行前面的命令,r搜索歷史命令。
3.別名功能:別名視圖別名,unalias取消別名,(在命名前加\斜杠跳過別名)
別名xx='xx '定義了壹個臨時別名和vim ~/。bashrc定義了壹個永久別名。
4.快捷鍵:d退出,a將光標移動到命令的前面,e將光標移動到命令的末尾,
l清除屏幕,u向前刪除,k向後刪除,y取消,m回車。
s鎖屏,q解鎖屏。
5.前臺和後臺作業控制:&;背景未保留,nohup背景保留,屏幕
;& amp& amp|||(命令返回值echo &;?)
*任意數量的字符
?任何字符
[]匹配括號中的任何字符。
()在shell中執行。
{}集合
\轉義字符
註意:echo-e“a \ TB”
$?前壹個命令的執行是否成功。
$1傳入的第壹個參數是$2 $3位置變量
不需要使用環境變量。
練習內容:讀取用戶指定文檔的ip連通性。
Bc計算器
假設我們將變量定義為:
記憶的方法是:
$ {}還可以用於為不同的變量狀態賦值(未設置、空值、非空值):