RHCE033學習筆記
第一章Linux 總覽 1.1 GNU:自由操作系統計劃 FSF:自由軟體基金會 GPL:GNU公共通用許可證 Ctrl Alt F1到Ctrl Alt F6六個組合鍵可以在六個虛擬控制台之間切換. Ctrl Alt F7可以切換到默認的X伺服器. 1.2 內核、程序和進程
組合鍵 | 符號名稱 | 約定使用 |
Ctrl C | SIGINT | 非常規中斷——終止前台進程 |
Ctrl D | EOT | 輸入完成的正常信號 |
Ctrl G | BEL | 終端聲效 |
Ctrl H | BS | 後退一格——刪除前一個字元 |
Ctrl J | LF | 換行——與Enter鍵功能相同 |
Ctrl L | FF | 換頁——使bash清屏 |
Ctrl Q | 解鎖終端顯示 | |
Ctrl S | 鎖住終端顯示 | |
Ctrl U | NAK | 刪除當前的行 |
Ctrl Z | SIGSTOP | 掛起進程 |
符號 | 意義 |
. | 當前工作目錄,相對引用中可使用 |
.. | 父目錄 |
~ | 用戶主目錄 |
- | 上個工作目錄 |
字元 | 作 用 |
* | 匹配0個或多個字元(開頭的“.”除外) |
? | 匹配一個字元(開頭的“.”除外) |
[…] | 匹配在給出的列表或範圍內的任何一個字元 |
[^…] | 匹配在給出的列表或範圍外的任何一個字元 |
用戶ID範圍 | 用戶類型 |
0 | 根用戶 |
1-499 | 系統用戶 |
500 | 普通用戶 |
命令 | 功能 |
id | 顯示用戶信息和組信息 |
whoami | 獲取當前用戶名 |
users、who、w | 獲取正在會話中的用戶 |
finger | 輸出用戶最后登陸系統時間及其它信息 |
操作 | 可以執行的用戶 |
chmod | 根用戶和文件的所有者 |
chgrp | 根用戶和文件所有者(必須是新組成員) |
chown | 只有根用戶 |
r(讀) | w(寫) | x(執行) | |
常規文件 | 瀏覽文件 | 修改文件 | 將文件作為命令執行 |
目錄 | 列出目錄內容 | 添加或刪除文件 | 在目錄中”搜索”已知文件 |
硬鏈接 | 軟鏈接 |
目錄之間不能用硬鏈接 | 軟鏈接可以關聯的目錄 |
硬鏈接沒有原始文件和複製文件的概念,硬鏈接一旦創建,它鏈接的兩端文件得到同等待遇 | 軟鏈接有引用和被引用的概念,刪除被引用的文件就會導致空鏈接的產生 |
硬鏈接必須關聯同一個文件系統下的文件 | 軟鏈接也可關聯不同文件系統中的文件 |
Chroot的目錄間可共享硬鏈接 | 軟鏈接不能引用chroot目錄外的文件 |
設備節點 | 磁碟 |
/dev/fd0 | 軟盤 |
/dev/hda | IDE1通道上的主盤 |
/dev/hdb | IDE1通道上的從盤 |
/dev/hdc | IDE2通道上的主盤 |
/dev/hdd | IDE2通道上的從盤 |
/dev/sda | SCSI的第一個硬碟 |
/dev/sdb | SCSI的第二個硬碟 |
/dev/cdrom | 到CD/ROM的符號鏈接 |
語法 | 替換 |
!! | 前一個命令 |
!n | 命令號n |
!-n | 倒數第n個命令 |
!cmd | 最后用來啟動cmd的命令 |
變數 | 含義 |
BASH_VERSION | 但前bash 的版本 |
HOSTNAME | 當前機器的DNS主機名 |
OLDPWD | 上次工作目錄 |
PWD | 當前工作目錄 |
RADOM | 介於0到32767之間的任意整數 |
SECONDS | 自shell啟動以來的秒數 |
變數 | 含義 |
? | 最新執行的命令的退出狀態,即查看返回值 |
- | 當前啟用中的shell選項標記 |
$ | 當前shell的進程ID |
_ | 前一個命令的最后標記 |
! | 最新後台命令的進程ID |
PPID | Shell父進程的ID |
SHELLOPTS | 被冒號隔開的當前啟用中的shell選項列表,和set – o結果一樣 |
UID | 當前用戶的UID |
變數 | 功能 |
TERM | 指定了用戶終端的底層配置,該變數在使用串列線控制台時更由用 |
PATH | 指定了可執行文件的搜索目錄 |
DISPLAY | 指定了圖像環境中客戶程序應該使用的X伺服器 |
LANG | 指定了國家化程序的首選語言 |
EDITOR | 指定了默認的編輯器 |
PRINTER | 指定了默認的印表機 |
替換 | 語法 | 含義 |
歷史(history) | ! | 前一個命令行 |
大括弧 | {} | 指定的文本 |
代字型大小 | ~或~username | 用戶的主目錄 |
變數 | $、${…} | 變數Shell和環境變數 |
算術 | $((…)) | 整數算術運算( 、-、*、/) |
命令 | `…`、$(…) | 運行在子shell中命令的輸出 |
路徑名 | *、?、[…]、[^…] | 文件系統中匹配的文件 |
語法 | 作用 |
\ | 避免一個字元被shell解釋 |
“…” | 避免雙引號內除了$、!和`…`(反引號)字元以外的其他字元被shell解釋 |
‘…’ | 避免引號內的字元被shell解釋 |
序列 | 替換 |
\a | 終端響鈴 |
\d | 以“星期月份日期”格式顯示日期 |
\h | 直到第一個“.”的主機名 |
\T | 以12小時格式HH:MM:SS顯示當前時間 |
\u | 當前用戶的用戶名 |
\W | 當前工作目錄的basename(即最后一個目錄) |
\! | 命令的歷史記錄號碼 |
\$ | 如果用戶的ID為0,則提示符為#,否則提示符為$ |
\n | 原樣輸出後面的字元 |
\nnn | 與八進位數字nnn對應的字元 |
標記 | 作用 |
-f | 使路徑名替換無效 |
-n | 讀取命令、但不執行(用來對腳本進行語法檢查) |
-o optionname | 設置指定的選項,一些常用選項如下: emacs 使用emacs風格的命令行快捷鍵 ignoreeof 當EOF(ctrl D)被讀取時,不退出shell vi 使用vi風格的命令行快捷鍵 |
-v | 在命令被讀取時,列印命令(調試腳本時有用) |
-x | 在替換被應用之後列印命令(調試腳本和檢查shell替換時有用) |
-C | 不允許shell在重定向中損壞文件 |
選項 | 作用 |
cdspell | 使用cd內置命令時,試圖改正目錄名的拼寫錯誤 |
expand_alias | 啟動shell別名 |
extglob | 啟動替換的模式匹配語法 |
nocaseglob | 應用文件名替換時不區分大小寫 |
上下文 | 登錄shell | 互動式shell |
從虛擬控制台登錄shell | 是 | 是 |
通過網路shell到一台遠程機器上時登錄shell | 是 | 是 |
X初始化shell | 是 | 是 |
X終端shell | 否 | 是 |
手動運行bash啟動的子shell | 否 | 是 |
用在命令替換中的子shell | 否 | 否 |
被圓括弧分組的命令使用的子shell | 否 | 否 |
執行腳本時使用的子shell | 否 | 否 |
文件 | Shell類型 | 預期功能 |
/etc/profile | 登錄shell | 通用的有效環境變數 |
/etc/profile.d/*.sh | 登錄shell | 軟體包特有的環境變數 |
~/bash_profile | 登錄shell | 用戶特有的環境變數 |
~/.bashrc | 所有互動式shell | 用戶特有的別名、shell功能和shell選項 |
/etc/bashrc | 所有互動式shell | 通用別名、shell功能和shell選項 |
流 | 描述符 | 縮寫 |
標準輸入 | 0 | stdin |
標準輸出 | 1 | stdout |
標準錯誤 | 2 | stderr |
表達式 | 字元類 | ASCII中的對應域 |
[:alnum:] | 字母數字混排 | A-Za-z0-9 |
[:alpha:] | 字母字元 | A-Za-z |
[:blank:] | 空格符或者製表符 | |
[:digit:] | 數字 | 0-9 |
[:lower:] | 小寫字母 | a-z |
[:punct:] | 可列印字元,不包括空格和字母數字混排字元 | |
[:space:] | 空白字元 | |
[:upper:] | 大寫字母 | A-Z |
字元 | 功能 | 正則表達式語法 | 解釋 |
. | 通配符 | 基本 | 代表一個或者任意字元 |
[abc],[a-z] | 包含域 | 基本 | 代表域內任意一個字元 |
[^abc],[^a-z] | 排除範圍 | 基本 | 代表不包含在域內的任意一個字元 |
? | 修飾符 | 擴展 | 代表0或1個前面的項 |
* | 修飾符 | 基本 | 代表0或多個前面的項 |
修飾符 | 擴展 | 代表1個或者多個前面的項 | |
{m,n} | 修飾符 | 擴展 | 代表前面的項出現了m到n次之間 |
{n} | 修飾符 | 擴展 | 代表前面的項具體的出現次數為n |
^ | 錨 | 基本 | 標出一行的開始 |
$ | 錨 | 基本 | 標出一行的結束 |
\< | 錨 | 基本 | 標出一個單詞的開始 |
\> | 錨 | 基本 | 標出一個單詞的開始 |
(…) | 分組 | 基本 | 允許修飾符修飾一組字元 |
(…|…) | 分組 | 擴展 | 允許指定可選的模式 |
\ | 轉義 | 擴展(基本) | 取消(或啟動)後續字元的特殊含義 |
正則表達式 | 文件名匹配 |
在執行搜索或者搜索及替換功能時,比如grep、vi、sed以及許多腳本語言,如perl、python等 | 有bash shell執行,是為了匹配文件名,並減少在一些應用程序或者腳本語言中搜索的範圍 |
使用表達式“.*”代表任意項 | 使用表達式“*”代表任意項 |
使用表達式“.”來表達單個字元 | 使用表達式“?”來表達任何單個字元 |
[火星人 ] RHCE學習筆記已經有820次圍觀