適合人群:Linux初學者
主要內容: Man手冊使用介紹
操作環境:CentOs?。叮?/span>
man手冊:linux /unix 環境下命令與函數的幫助文檔!
相關命令:whatis , man
使用方法:man [選項] [參數]
whatis = man –f keyword
實例:
[Jev@Jev ~]$ whatis tree #查詢tree命令所在章節
[Jev@Jev ~]$ man 1 tree #查詢tree命令使用方法
man手冊分為下面9個章節:
→1.用戶命令
→2.內核提供的系統調用
→3.庫調用(C庫函數)
→4.特殊文件和設備文件
→5.文件格式規范
→6.游戲
→7.雜項(及其規范)
→8.系統管理類命令
→9. Linux 內核API
注:man手冊頁通過名稱和所屬分類標識。有些不同分類的man手冊頁名字可能相同,比如 man(1) 和 man(5),這時需要額外指明分類以訪問需要的手冊。
man手冊段落說明:
NAME —————手冊敘述對象名稱,及簡要描述
SYNOPSIS————命令參數格式,或者函數調用格式等
注: [ ] – 可選內容; < > – 必選內容; a|b – 二選一;
{ } –分 組; … – 同一內容可以出現多次;
DESCRIPTION———對敘述對象更加詳細的描述
EXAMPLES————由淺入深的使用示例
OPTIONS————-命令行或者函數調用參數的說明
EXITAMPLES———-示例
FILES ————–與敘述對象相關的文件
AUTHOR————–作者信息
COPYRIGHT———–版本信息
BUGS —————已知的bug
SEE ALSO ———–其他幫助參考
Man命令使用方法:
Man常見幫助方法:
man [章節] keyword |
查看man手冊頁 |
man –a keyword |
列出所有幫助 |
man -k keyword |
搜索man手冊 |
man –w [章節] keyword |
打印man幫助路徑 |
man –f keyword |
使用 whatis 數據庫列出所有匹配的頁面,相當于whatis |
Man命令操作方法:通過less命令實現;
快捷鍵 |
功能 |
快捷鍵 |
功能 |
Space, ^v, ^F, ^f |
向文件尾部翻屏 |
d, ^d |
向文件尾部翻半屏 |
b, ^b |
向文件首部翻屏 |
u, ^u |
向文件首部翻半屏 |
RETURN(Enter), ^N, e, ^E or j or ^J |
向文件尾部翻一行 |
y or ^Y or ^P or k or ^K |
向文件尾部翻一行 |
1G |
回到文件首部 |
# |
跳轉至第#行 |
G |
翻至文件尾部 |
q |
退出 |
Man 搜索方式:
/KEYWORD |
以KEYWORD指定的字符串為關鍵字,從當前位置向文件 尾部搜索;不區分字符大小寫 |
n: 跟搜索命令同方向,下一個 N:跟搜索命令反方向,上一個 |
|
?KEYWORD |
以KEYWORD指定的字符串為關鍵字,從當前位置向文件 首部搜索;不區分字符大小寫 |
n: 跟搜索命令同方向,下一個 N:跟搜索命令反方向,上一個 |
FHS(Filesystem Hierarchy Standard)標準:定義了類 Unix 的作業系統中擺放檔案和目錄的要求和指引,下面以根文件系統為例,一學習了解FHS文件系統;
Linux文件系統中的文件是數據的集合,文件系統不僅包含著文件中的數據而且還有文件系統的結構,所有Linux 用戶和程序看到的文件、目錄、軟連接及文件保護信息等都存儲在其中。
相關命令:tree
用法:tree [選項] [參數]
用tree查詢根文件系統目錄實例:
[Jev@jev /]$ tree –Ld 1 / #列出根下的一級目錄
/ #根目錄
├── bin #一般用戶使用的命令,管理員和普通用戶都可以使用
├── sbin #存放管理員才能執行的命令
├── boot #存放系統引導文件,放置內核及LILO、GRUB等導引程序
├── dev #存放硬盤,分區,鍵盤,鼠標,USB等設備文件
├── etc #集中存放配置文件
├── home #用戶空間,存放普通用戶的家目錄
├── lib #存放共享連接庫文件,例如C鏈接庫、內核模塊
├── lib64 #存放64位庫文件
├── lost+found #存放系統意外崩潰或機器意外關機而產生一些文件碎片
├── media #通常用來掛載便攜式設備,掛接CD-ROM等設備的目錄
├── misc #一般用來掛載NFS服務的共享目錄
├── mnt #移動設備文件系統的掛點,掛載額外的存儲設備
├── net #存放的都是一些網絡相關的虛擬配置文件
├── opt #存放第三方軟件
├── proc #主要保存系統的內核、進程、外部設備狀態和網絡狀態
├── root #管理員的家目錄
├── selinux #存放selinux相關的安全策略文件,安全強化 Linux
├── srv #為服務提供數據存放位置的
├── sys #虛擬文件系統,保存內核相關信息
├── tmp #存放臨時文件,默認存放30天
├── usr #存放系統軟件資源的目錄
└── var #存放動態數據,如緩存、日志以及軟件運行產生的文件
22 directories, 0 files # 根下共22個目錄,0個文件
從上面示例,我們可以從上面的根文件系統(rootfs: root filesystem)大體了解到,文件系統從根目錄下開始,用“ /”表示;目錄和文件被組織成一個單根倒置樹結構。
部分目錄詳解:
/boot:引導文件存放目錄,內核文件(vmlinuz)、引導加載器(bootloader, grub)都存放于此目錄
/bin:供所有用戶使用的基本命令;不能關聯至獨立分區,OS啟動即會用到的程序
/sbin:管理類的基本命令;不能關聯至獨立分區, OS啟動即會用到的程序
/lib:啟動時程序依賴的基本共享庫文件以及內核模塊文件(/lib/modules)
/lib64:專用于x86_64系統上的輔助共享庫文件存放位置
/dev:設備文件及特殊文件存儲位置
b: block device,隨機訪問
c: character device,線性訪問
/usr: universal shared, read-only data(通用共享,只讀數據)
bin: 保證系統擁有完整功能而提供的應用程序
sbin:
lib: 32位使用
lib64:只存在64位系統
include: C程序的頭文件(header files)
share:結構化獨立的數據,例如doc, man等
local:第三方應用程序的安裝位置
bin, sbin, lib, lib64, etc, share
/var: variable data files(動態數據存放文件夾)
cache: 應用程序緩存數據目錄
lib: 應用程序狀態信息數據
local:專用于為/usr/local下的應用程序存儲可變數據;
lock: 鎖文件
log: 日志目錄及文件
opt: 專用于為/opt下的應用程序存儲可變數據;
run: 運行中的進程相關數據,通常用于存儲進程pid文件
spool: 應用程序數據池
tmp: 保存系統兩次重啟之間產生的臨時數據
Linux上的應用程序的組成部分:
二進制程序:/bin, /sbin,/usr/bin,/usr/sbin,
/usr/local/bin,/usr/local/sbin
庫 文 件: /lib, /lib64, /usr/lib, /usr/lib64,
/usr/local/lib, /usr/local/lib64
配置文件: /etc, /etc/DIRECTORY, /usr/local/etc
幫助文件: /usr/share/man,/usr/share/doc,
/usr/local/share/man,/usr/local/share/doc
注:linux系統目錄和文件命名嚴格區分大小寫;除了“/”和“NUL”外其他字符都可以用于目錄或文件的命名;路徑用“ /”分割。
相關命令:ls [選項] [參數]
Linux常見文件類型的及標識符號:
文件類型 |
標志符號 |
普通文件 |
– |
目錄文件 |
d |
塊設備 |
b |
字符設備 |
c |
符號鏈接文件 |
| |
管道文件pipe |
p |
套接字文件socket |
s |
Linux常見文件類型的顏色標識:
文件類型 |
標志顏色 |
目錄 |
藍色 |
可執行文件 |
綠色 |
壓縮文件 |
紅色 |
鏈接文件 |
淺藍色 |
套接字文件 |
粉色 |
其他文件 |
灰色 |
Linux文件分兩類數據: metadata(元數據)和 data(數據)
標準Linux文件系統(如ext4),文件名稱區分大小寫,除了“/”和“NUL”所有字符都有效.但使用特殊字符的目錄名和文件不推薦使用,有些字符需要用引號來引用它們。
Linux文件包括路徑在內文件名稱最長4095個字節,用/分隔的路徑不能超過255個字節,以“.”開頭的文件為隱藏文件。
查看基名:basename
查看目錄名:dirname
改變目錄:cd
切換至父目錄:cd .. 切換至以前的工作目錄:cd –
相關環境變量:PWD:保存了當前目錄路徑
OLDPWD:上一次所在目錄路徑
列出目錄內容:ls
用法:ls [options] [files_or_dirs]
相關參數:
-a 包含隱藏文件 -l 顯示額外的信息
-R 目錄遞歸通過 -ld 目錄和符號鏈接信息
-1 文件分行顯示 -S 按從大到小排序
-t mtime 排序 -U 不排序按目錄存放順序顯示
-u 配合-t選項,顯示并按atime從新到舊排序
查看文件狀態 :stat
文件: metadata(元數據), data(數據)
三個時間戳:
access time:訪問時間, atime,讀取文件內容
modify time: 修改時間, mtime,改變文件內容(數據)
change time: 改變時間, ctime,元數據發生改變
通配符:
文件通配符 |
文件通配符 |
預定義的字符類:#man 7 glob |
* 匹配零個或多個字符 |
[:digit:]:任意數字,相當于0-9 |
? 匹配任何單個字符 |
[:lower:]:任意小寫字母 |
~ 當前用戶家目錄 |
[:upper:]: 任意大寫字母 |
~username 用戶家目錄 |
[:alpha:]: 任意大小寫字母 |
~+ 當前工作目錄 |
[:alnum:]:任意數字或字母 |
~- 前一個工作目錄 |
[:blank:]:水平空白字符 |
[0-9] 匹配數字范圍 |
[:space:]:水平或垂直空白字符 |
[a-z]:字母 |
[:punct:]:標點符號 |
[A-Z]:字母 |
[:print:]:可打印字符 |
[wxc] 匹配列表中的任何的一個字符 |
[:cntrl:]:控制(非打?。┳址?/span> |
[^wxc] 匹配列表中的所有字符以外的字符 |
[:graph:]:圖形字符 |
— |
[:xdigit:]:十六進制字符 |
— |
本文為筆者于【馬哥教育】面授筆記整理,轉載請注明來自linux運維部落。
原創文章,作者:Jev Tse,如若轉載,請注明出處:http://www.www58058.com/52573