Linux入門07-Linux基礎(chǔ)之命令規(guī)范

程序的組成部分:二進(jìn)制程序文件、庫文件、配置文件、幫助文件

? ? 二進(jìn)制文件、庫文件:可執(zhí)行文件

庫文件:不能獨(dú)立執(zhí)行,只能被調(diào)用執(zhí)行

配置文件、幫助文件:可被查看其內(nèi)容的文件

Linux文件:

1、文件名嚴(yán)格區(qū)分字符大小寫;file1, File1, FILE1是不同的文件;

2、文件名可使用除/以外的任意字符,不建議使用特殊字符;

/: 根目錄,路徑分隔符;

3、文件名長度最長不能超過255個字符;

4、所以.開頭的文件,均為隱藏文件;

路徑:

絕對路徑:從根目錄起始的路徑;

相對路徑:對當(dāng)前位置起始的路徑;

當(dāng)前位置的表示方式:

(1) ./: ./sysconfig/network-scripts

(2) 省略上述符號: sysconfig/network-scripts

..:表示當(dāng)前目錄的上一級目錄

當(dāng)前目錄:current directory, 也稱作working directory;

pwd: printing working directory

LSB: Linux Standard Base

命令總結(jié):ls, cd, type, tty, cat, which, whereis, pwd, echo

命令:

(1) 文件系統(tǒng)相關(guān):

目錄管理

文件管理

文件查看

文件編輯

(2) 系統(tǒng)管理相關(guān):

終端:

用戶與主機(jī)交互,必然用到的設(shè)備;

物理終端:直接接入本機(jī)的顯示器和鍵盤設(shè)備;/dev/console

虛擬終端:附加在物理終端之上的以軟件方式虛擬實(shí)現(xiàn)的終端,CentOS 6默認(rèn)啟動6個虛擬終端

Ctrl+Alt+F#: [1,6]

圖形終端:附加在物理終端之上的以軟件方式虛擬實(shí)現(xiàn)的終端,但額外會提供桌面環(huán)境;

設(shè)備文件路徑:/dev/tty#

模擬終端:

圖形界面下打開的命令行接口,基于ssh協(xié)議或telnet協(xié)議等遠(yuǎn)程打開的界面

設(shè)備文件:/dev/pts/#? ? [0,oo)

查看當(dāng)前的終端設(shè)備:tty

交互式接口:啟動終端后,在終端設(shè)備附加一個交互式應(yīng)用程序

GUI:

X protocol, window manager, desktop

Desktop:

GNOME (C, gtk)

KDE? (C++, qt)

XFCE? (輕量級桌面)

CLI:

shell程序:

sh (bourn)

csh

tcsh

ksh (korn)

bash (bourn again shell), GPL

zsh

顯示當(dāng)前使用的shell:

# echo ${SHELL}

顯示當(dāng)前系統(tǒng)使用的所有shell:

# cat /etc/shells

命令提示符:prompt

[root@localhost ~]#

[root@localhost ~]:PS1

prompt:

管理員:#

普通用戶:$

命令:

輸入命令,回車:

發(fā)起一命令:請求內(nèi)核將某個二進(jìn)制程序運(yùn)行為一個進(jìn)程

提請shell程序找到鍵入命令所對應(yīng)的可執(zhí)行程序或代碼,并由其分析后提交給內(nèi)核分配資源將其運(yùn)行起來;

表現(xiàn)為一個或多個進(jìn)程;

? 由程序態(tài)---->進(jìn)程

? 靜態(tài)---->動態(tài)(有生命周期)

? 命令本身是一個可執(zhí)行程序文件:二進(jìn)制格式的文件,有可能會調(diào)用共享庫文件

? 多數(shù)程序文件都存放在:/bin,/sbin,/usr/bin,/usr/sbin,/usr/local/bin,/usr/local/sbin

在shell中可執(zhí)行的命令有兩類:

內(nèi)建命令:由shell自帶的,而且通過某命令形式提供;

外部命令:在當(dāng)前系統(tǒng)的某文件系統(tǒng)路徑下有對應(yīng)的可執(zhí)行程序文件;

which,whereis

區(qū)別內(nèi)部或外部命令:

# type COMMAND

Shell程序是獨(dú)特的程序,負(fù)責(zé)解析用戶提供的命令

shell程序搜尋可執(zhí)行程序文件的路徑定義在PATH環(huán)境變量中;

# echo $PATH

注意:自左至右

? ? ? ? 庫文件:

運(yùn)行命令時(shí)如需調(diào)用標(biāo)準(zhǔn)庫或者其他庫,庫文件需調(diào)入內(nèi)存內(nèi)。

庫文件就是公共功能性程序,不能獨(dú)立執(zhí)行。多數(shù)存放在/lib,/lib/64,/usr/lib,/usr/lib64,/usr/local/lib,/usr/local/lib64

? ? ? ? Linux的可執(zhí)行文件:ELF文件

? ? ? ? 通過 file命令查看文件類型

運(yùn)行命令:

命令格式:

COMMAND [OPTIONS...] [ARGUMENTS...]


選項(xiàng):指定目錄運(yùn)行特性;

短選項(xiàng):-c, 例如:-l, -h (有些選項(xiàng)沒有-)

多個短選項(xiàng)可命令使用,例如-l -h, 可寫作-lh;

長選項(xiàng):--word,例如:--long, --human-readable

長選項(xiàng)不能合并

注意:有些選項(xiàng)可以帶參數(shù),稱為選項(xiàng)參數(shù)

參數(shù):命令的作用對象

向命令提供數(shù)據(jù);

不同命令的參數(shù)格式不一樣

多個參數(shù)要用空格分開

注意:

1、多選項(xiàng),以及多參數(shù)和命令之間都應(yīng)該使用空白字符分隔

2、取消命令執(zhí)行:Ctrl+c

Linux命令幫助的獲取

外部命令:都有一個可執(zhí)行程序,位于文件系統(tǒng)某目錄下;

which, whereis

? ? ? 內(nèi)部命令幫助:

# help COMMAND

hash命令:

shell搜尋到的外部命令的路徑結(jié)果會緩存至kv(key-value)存儲中;

history命令:

作用是什么?相關(guān)的環(huán)境變量是什么?有用的選項(xiàng)?

管理命令歷史;

登錄shell時(shí),會讀取命令歷史文件中記錄下的命令:~/.bash_history

登錄進(jìn)shell后新執(zhí)行的命令只會記錄在緩存中;這些命令會用戶退出時(shí)“追加”至命令歷史文件中;

history:

-a: 追加本次會話新執(zhí)行的命令歷史列表至歷史文件中;

-d: 刪除歷史中指定的命令;

-c: 清空命令歷史;

快捷操作:

!#: 調(diào)用歷史中第#條命令;

!string:調(diào)用歷史中最近一個以string開頭的命令;

!!: 上一條命令

外部命令幫助獲?。?/p>

(2) man COMMAND

? ? 使用手冊:壓縮格式的文件,有章節(jié)之分

手冊頁:/usr/share/man

man1 ... man8

man1: 用戶命令

man2: 系統(tǒng)調(diào)用

man3: C庫調(diào)用

man4: 設(shè)備文件及特殊文件

man5: 配置文件格式

man6: 游戲使用幫助

man7: 雜項(xiàng)

man8: 管理工具

注意:有些關(guān)鍵在不止一個章節(jié)中存在幫助手冊;

要查看指定章節(jié)中的手冊:man # COMMAND

查看命令有哪些章節(jié)的幫助;whatis COMMAND (其執(zhí)行過程是查詢數(shù)據(jù)庫進(jìn)行的)

手動更新數(shù)據(jù)庫;makewhatis

man命令的配置文件:/etc/man.config

MANPATH /PATH/TO/SOMEWHERE: 指明新的手冊文件搜索位置

# man -M /PATH/TO/SOMEWHERE COMMAND: 到指定位置下搜索COMMAND命令的手冊頁并顯示之;

幫助手冊中的段落說明:

NAME 功能性說明

SYNOPSIS 語法格式

DESCRIPTION 描述

OPTIONS 選項(xiàng)

EXAMPLES 使用示例

AUTHOR 作者

REPORTING BUGS 報(bào)告程序BUG的方式

SEE ALSO 參考

SYNOPSIS:

[]:可選內(nèi)容

<>: 必選內(nèi)容

a|b:二選一

...: 同一內(nèi)容可出現(xiàn)多次


man命令打開手冊以后的操作方法:

空格, : 向文件尾翻屏;

b, : 向文件首部翻屏;

Ctrl+d, : 向文件尾部翻半屏;

Ctrl+u, : 向文件首部翻半屏;

回車鍵: 向文件尾部翻一行;

Ctrl+k:向文件首部翻一行;

q: 退出;

#:跳轉(zhuǎn)至第#行;

1G: 回到文件首部

G:翻至文件尾部

文本搜索:

/KEYWORD:

以KEYWORD指定的字符串為關(guān)鍵字,從當(dāng)前位置向文件尾部搜索;不區(qū)分字符大小寫;

n: 跟搜索命令同方向

N:跟搜索命令反方向

?KEYWORD:

以KEYWORD指定的字符串為關(guān)鍵字,從當(dāng)前位置向文件首部搜索;不區(qū)分字符大小寫;

n: 跟搜索命令同方向

N:跟搜索命令反方向

(3) info 獲取命令在在線文檔

info COMMAND

(4) 程序自身的幫助文檔

/usr/share/doc/COMMAND-VERSION

? README:程序的相關(guān)信息

? INSTALL:安裝幫助

? CHANGES:版本迭代時(shí)的改動信息


(5) 程序官方文檔

? ? 官方站點(diǎn)上的“Document”

(6) 發(fā)行版的官方文檔

http://www.redhat.com/docs

(7) 搜索引擎 Google

(8) slideshare

http://www.slideshare.net/

? ? 推薦的出版社:

o`Reiley

Wrox

機(jī)械工業(yè)出版社

電子工業(yè)出版社

清華大學(xué)出版社

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容