在環境中使用alias NAME="COMMAND [ARG]"是保存不住的,須要寫入bash的配置文件,我的的配置文件爲.bashrc,更改完配置文件後,須要從新讀取配置文件python
source /path/to/config_file . /path/to/config_file #取消別名 unalias NAME #別名與命令同名時使用原命令 \COMMAND "COMMAND" 'COMMAND' command COMMAND /path/COMMAND
命令的不一樣風格:mysql
ls -l -a #短選項:UNIX風格選項,兩個短選項能夠一塊寫,長短選項不能混寫 cat --help #長選項:GNU風格選項 ip a #BSD風格選項:一個字母
命令使用的小技巧:
取消和結束命令執行:Ctrl+c(強制中止),Ctrl+d(結束程序)nginx
echo "welcome";ls #多個命令可使用;號隔開 echo "https://kernal\ >.org" #一個命令可使用\分紅多行 type -a #查看這個命令的全部內外部命令
echo 'echo $PATH' #輸出echo $PATH echo "echo $PATH" #輸出echo 環境變量的值 echo `echo $PATH` #僅輸出環境變量的值與$()用法一致 echo {1..100} #自動展開1-100的數 echo {1..100..2} #1-100步進爲2 echo {A-z} #將字符按照ascii的順序展開因此中間會夾雜幾個符號 echo {a-Z} #會將字符按照ascii反向顯示 echo {000..100} #定義格式,能夠將數字輸出都爲3位數 echo {a,b}{1,2,3} #完成笛卡爾乘積
單引號爲強引用,直接輸出,不轉換任何值
雙引號轉換變量
反響單引號會識別命令並執行,也會轉換變量的值
同時$(COMMAND)的使用方式與``相同sql
tab鍵能夠命令補全和路徑補全,當有兩個選擇時按兩下會將可選項都列出來,CentOS7能夠將字命令補全,如今有一個大命令帶子命令的發展趨勢數據庫
Ctrl+s:鎖定屏幕,鍵盤能夠輸入,只是不現實了
Ctrl+q:解鎖屏幕
Ctrl+l:清屏,至關於clear命令
Ctrl+c:終止命令
Ctrl+z:掛起命令
Ctrl+a:光標移動到行首,至關於Home
Ctrl+e:光標移動到行尾,至關於End
Ctrl+xx:命令在行首和光標之間移動
Ctrl+u:從光標處刪除至命令行首
Ctrl+k:從光標處刪除至命令行尾
Alt+r:刪除當前整行
Alt+b:光標向左刪除一個單詞
ALt+f:光標向右刪除一個單詞
Alt+#,$:#爲數字,$爲字母,能夠將$重複#次打印在屏幕上
...apache
whatis COMMAND能夠查詢簡單的命令時什麼,也能夠顯示命令在幫助手冊第幾章。當剛剛裝好系統的時候whatis時不能用的,須要手動創建數據庫,CentOS6使用makewhatis命令,CentOS7與Ubuntu使用mandb命令。tomcat
whatis #查看命令基本做用 mandb #建立whatis數據庫CentOS7和Ubuntu命令 makewhatis #建立whatis數據庫CentOS6
當同名的命令或文件都有man幫助時(例如passwd命令和passwd文件說明)有限打開章節數最小的幫助頁面bash
要想查看對應章節數的內容,須要man # COMMAND其中#爲章節數
用戶手冊章節:服務器
Linux內核API架構
space:向文件尾部翻頁
b:向文件首部翻屏
d:向文件尾部翻半屏
u:向文件首部翻半屏
q:退出
$:跳轉至第$行
1G或gg:回到文件首部
G:翻至文件尾部
/STRING:搜索STRING字符串,n向下搜索,N向上搜索
?STRING:向上搜索,n向上搜索,N向下搜索
-a:能夠打開參數的全部文檔,退出第一個進入第二個,一次向下
-k:能夠列出包含參數的全部章節
-w:打印幫助的路徑
能夠進入相關文檔,進入二級目錄使用回車等
圖形界面也有幫助文檔
內部命令獲取幫助可使用help COMMAND
例如:
echo:回顯,從標準輸出顯示,並自動在結束時加換行符 -n:不加換行符 -e:轉義其餘字符,在含有轉義字符時應該加上引號 #更改顏色echo -e "\033[31mXXXXX\033[0m" \n:換行 \c:壓縮換行 \t:製表符 \0:八進制 \x:十六進制 man ascii #查看ascii表
Unicode與UTF-8
Unicode只是字符集,儲存時爲了節省空間使用UTF-8編碼,UTF-8是可變長度儲存,從一個字節到4個字節,UTF-32是所有使用4個字節存儲,UTF-16是2個或4個字節,比較浪費空間。
同時UTF-8與Unicode也有相互轉化的對應方式。
退出bash時會將內存中的命令歷史存入.bash_history,history能夠查看命令歷史。
history !STRING #執行以STRING開頭的歷史命令 !?STRING #重複前一個包含STRING的命令 !STRING:p #僅打印民聯歷史,而不執行 !! #執行錢一條命令 !n #執行hsitory歷史輸出對應序號n命令 !-# #執行前#條命令 !:0 #執行上一條命令去除參數 !:# #取上一條命令的第幾個參數(0爲命令) !* #上條命令的全部參數 !$ #上調命令的最後一個參數 ^STRING #刪除上調命令中的第一個STRING ^STING1^STRING2 #將上條命令中的全部STRING1替換爲STRING2 !:gs/STRING1/STRING2 #將上調命令中的全部STRING1替換爲STRING2 -c:刪除全部命令歷史 -n:顯示最近的n條歷史 -a:追加本次繪畫新執行的命令歷史列表至歷史文件 ... $HISTSIZE:命令歷史記錄的條數 $HISTFILE:指定歷史文件,默認爲~/.bash_history $HISTFILESIZE:命令歷史文件記錄歷史的條數 $HISTTIMEFORMAT="%F %T ":顯示時間 $HISTIGNORE="str1:str2"忽略str1命令,str2開頭的歷史 控制命令歷史的記錄方式: $HISTCONTROL: ignoredups:默認,忽略重複的命令,連續且相同爲「重複」 ignorespace:忽略全部以空白開頭的命令 ignoreboth:至關於ignoredups,ignorespace的組合 erasedups:刪除重複命令 export 變量名=「值」 #存放在/etc/profile 或 ~/..bash_profile中前者時全局做用,後者只有對應用戶變量
date:顯示系統時間 +%F:顯示年月日 +%T:顯示時分秒 +%:有各類格式能夠查看幫助查詢 -d:'-1 day'等方式顯示指定時間並輸出 -u:顯示0時區時間 clock:或hwclock:硬件時間 -s:將系統時間設置爲硬件時間 -w:將硬件時間設置爲系統時間 ntpdate IP:同步爲指定服務器的時間 ctl:顯示日曆(1752年9月)
shutdown -r now #如今重啓計算機 shutdwon -h +n #過n分鐘後關閉計算機 shutdown -c #取消關機計劃 shutdown -h +15 "shutdown after 15minutes" #15分鐘後關閉計算機並提示「15分鐘後關機」!注意:超過15分鐘的提示將再也不顯示
timedatectl #設置時區的命令 timedatectl list-timezones #列出全部時區 timedatectl set-timezone #設置時區
這個文件是登錄終端前顯示的相關信息,經過必定語法,將必定信息顯示在登錄以前。
\n:hostname信息
\m:等價於uname -m顯示主機架構
\r:等價於unmae -r顯示內核版本
\t:顯示時間
\s:等價於uname -s顯示系統名稱
\l:顯示終端
screen能夠打開一個獨立的屏幕,終端中斷鏈接後也不會終止命令,當編譯內核時或者須要長時間運行不間斷命令時須要。
screen screen -S NAME #打開一個共享屏幕 screen -x NAME #須要鏈接到同一機器,且用戶相同,便可同步,也能夠看到對方的操做 Ctrl+a,d #臨時剝離當前繪畫,可使用-r回覆 screen -r #恢復某screen繪畫 screen -ls #將現有的screen窗口都列出來