Linux入門基礎#1:命令行bash基本操作
Shell(殼)是用戶與操作系統底層(通常是內核)之間交互的中介程序,負責將用戶指令、操作傳遞給操作系統底層
Shell一般分為:圖形化Shell(GUI)、命令行Shell(CLI)
CLI: command line interface
GUI: Graphical User Interface
Linux中一般默認GUI為:GNOME,默認CLI為:BASH
BASH提示符以#或$起始,#代表當前用戶為root用戶,$代表當前用戶為普通用戶我們可以通過鍵盤上的Tab按鍵對命令或文件名進行自動補全
su - 進入root用戶模式。
su不切換終端,還在當前目錄,su - 切換全新的終端。
如果不知道或忘記密碼,sudo passwd root可以直接重新設置root密碼。直接passwd是修改密碼
輸入exit 退出root模式
普通用戶用sudo,可以用管理員身份運行
hostname查看主機名
uname顯示系統信息, uname -a 所有信息
命令id可以顯示當前用戶的信息
~代表home目錄
Ctrl + C終止當前命令
Ctrl+C:送SIGINT信號,默認進程會結束,但是進程自己可以重定義收到這個信號的行為。
Ctrl+Z:送SIGSTOP信號,進程只是被停止,再送SIGCONT信號,進程繼續運行。
ctrl-d 不是發送信號,而是表示一個特殊的二進制值,表示 EOF
1、Ctrl+C比較暴力,就是發送Terminal到當前的程序,比如你正在運行一個查找功能,文件正在查找中,Ctrl+C就會強制結束當前的這個進程。
2、Ctrl+Z是把當前的程序掛起,暫停執行這個程序,比如你正在mysql終端中,需要出來搞點其他的文件操作,又不想退出mysql終端(因為下次還得輸入用戶名密碼進入,挺麻煩),於是可以ctrl+z將mysql掛起,然後進行其他操作,然後輸入fg回車後就可以回來,當然可以掛起好多進程到後台,然後fg 加編號就能把掛起的進程返回到前台。當然,配合bg和fg命令進行前後台切換會非常方便。
3、Ctrl+D 是發送一個exit信號,沒有那麼強烈,類似ctrl+C的操作,比如你從管理員root退回到你的普通用戶就可以這麼用。
clear:清除終端屏幕
命令由:命令,選項,參數組成
Tab鍵用來補全文件(夾)名,命令
按方向鍵“上”或者Ctrl+p,重復上一次命令
BASH會記錄我們以往操作的命令,可以通過history命令查看所有歷史命令
BASH可以通過以下方式調用歷史記錄以簡化操作:
!! 重復前一個命令
!字符 重復前一個以指定字符開頭的命令
!num 按歷史記錄序號執行命令
!?abc 重復之前包含abc的命令
!-n 重復n個命令之前那個命令
我們可以通過 ctrl + r 來對歷史命令記錄進行搜索查詢
esc . (ESC+點號)上一個命令的參數
命令su可以切換用戶
命令passwd可以修改當前用戶的密碼
通過在命令後追加一個&,可以將該命令放入後台運行。例如:firefox & : 加&表示在後台運行火狐,這樣命令行就可以繼續使用。CLI是多進程終端
命令通配符:
* : 匹配零個或多個
? : 匹配任意一個字符
[0-9]:匹配一個數字范圍
[abc]:匹配列表內的字符
[^abc]:匹配列表以外的字符
通過以下命令可以管理後台作業:
& 在後台運行
jobs 顯示後台作業(jobs是對當前終端下的任務進行調度。ps是對當前終端或系統中的進程進行查看管理的。ps要底層一些。)
fg 將後台作業調到前台執行 ; fg = foreground`
bg(+進程序號) 繼續執行一個後台作業 bg = background
例如上買你進程2是sleep 5000已經停止了,那麼bg 2可回復它繼續進行