1. 程式人生 > >Linux學習筆記1.0

Linux學習筆記1.0

Linux 基礎 知識積累

終端(terminal)
物理終端(/dev/console) 控制臺console
虛擬終端(/dev/tty[1-6]) tty:teletypewriters,可有n個,ctrl+alt+F[1-6]
圖形終端(/dev/tty7)
串行終端(/dev/ttyS#)
偽終端(/dev/pty/#) pty:pseudo-tty,SSH遠程連接
查看當前終端設備:#tty
·
交互式接口
GUI:Graphic User Interface 圖形用戶界面
CLI:Command Line Interface 命令行界面
·
SHELL
shell是Linux系統的用戶界面,提供了用戶與內核進行交互操作的一種接口。它接收用戶輸入的命令並把它送入內核執行。
shell也被稱為Linux的命令解釋器(command interpreter)
shell是一種高級程序設計語言
·
shell程序:sh、csh、tcsh、ksh、bash、GPL、zsh
bash(Bourne-Again Shell)是GNU計劃中重要的工具之一,目前也是Linux標準的shell,與sh兼容。CentOS默認使用。
在shell中可執行的命令有兩類:
1、內部命令:由shell自帶,而且通過某種命令形式提供。
用help查看,用enable操作。
2、外部命令:在文件系統路徑下有對應的可執行程序文件。
·
Hash緩存表存放執行過的外部命令,提高外部命令調用效率。
·
alias定義命令別名,在命令行中定義的別名,僅對當前shell進程有效,要想永久有效,要定義在配置文件中。
僅對當前用戶有效:~/.bashc
對所有用戶有效:/etc/bashrc
·
命令格式:
command [options...] [arguments...]
選項:用於啟用或關閉命令的某個或某些功能。
參數:命令的作用對象,比如文件名,用戶名等。
註意:
1、多個選項以及多個參數和命令之間使用空白字符分隔。
2、取消和結束命令執行:Ctrl+c,Ctrl+d。
3、多個命令可用;符號分開。
4、一個命令可用\分成多行。
·
日期和時間
Linux有兩種時鐘:
系統時鐘:由Linux內核通過CPU的工作頻率進行的。
硬件時鐘:主板
date顯示和設置系統時間,hwclock,clock顯示硬件時間。
·
echo命令
功能:顯示字符。
語法:echo [-neE][字符串]
說明:echo會將輸入的字符串送往標準輸出。輸出的字符間以空白字符隔開,並在最後加上換行號。
選項:
-E (默認)不支持\解釋功能。
-n 不自動換行。
-e 啟用\字符的解釋功能。
顯示變量:
echo "$VAR_NAME" 變量會替換,弱引用。
echo ‘$VAR_NAME‘ 變量不會替換,強引用。
·
命令行擴展
$()|“”
把符號中的命令的輸出,打印給另一個命令作為參數使用
·
括號擴展
{}
echo file{1,3,5} 輸出:file1 file3 file5
echo {1..10} 輸出:1 2 3 4 5 6 7 8 9 10
echo {a..e} 輸出:a b c d e
·
tab鍵
單擊tab命令補全
用戶給定的字符串只有一條唯一對應的命令,直接補全。
否則,再次tab會給出列表。
路徑補全
把用戶給出的字符串當做路徑開頭,搜索以指定字符串開頭的文件名。如果唯一,直接補全。否則,再次tab給出列表。
雙擊tab:
command 2Tab 所有子命令或文件補全
string 2Tab 以string開頭命令
/ 2Tab 顯示所有根目錄下一級目錄,包括隱藏目錄
./ 2Tab 當前目錄下子目錄,包括隱藏目錄
2Tab 當前目錄下子目錄,不包括隱藏目錄
~ 2Tab 所有用戶列表
$ 2Tab 所有變量
@ 2Tab /etc/hosts記錄 (centos7不支持)
= 2Tab 相當於ls –A (centos7不支持)
·
命令歷史
保存輸入的命令歷史,可以用來重復執行。
登錄shell時,會讀取命令歷史文件中記錄下的命令 ~/.bashhistory
登錄進shell後執行的命令只會記錄在緩存中,這些命令會在用戶退出時追加至命令歷史文件夾中。
·
重復前一個命令:
1、上方向鍵,回車。
2、!!,回車。
3、!-1,回車。
4、Ctrl+p,回車。
!:0 執行前一條命令(去除參數)
Ctrl+n 顯示當前歷史中的下一條命令,但不執行
Ctrl+j 執行當前命令
!n 執行history命令輸出對應序號n的命令
!-n 執行history歷史中倒數第n個命令
·
相關環境變量:
HISTSIZE:命令歷史記錄的條數。
HISTFILE:指定歷史文件,默認為~/.bashhistory。
HISTFILESIZE:命令歷史文件記錄歷史的條數。
HISTTIMEFORMAT=“%F %T “ 顯示時間。
HISTIGNORE=“str1:str2:… “ 忽略str1命令,str2開頭的歷史。

Linux學習筆記1.0