回顧
開源協(xié)定:
GPL, LGPL, BSD, Apache
BSD:
1、如果二次發(fā)布的產(chǎn)品中包含源代碼,則在源代碼中必須帶有原來的代碼中的BSD 協(xié)定:
2、如果二次發(fā)布的產(chǎn)品是二進(jìn)制格式的庫或程序,則需要在發(fā)布的文檔或版權(quán)聲明 中說明包含原來的代碼中的BSD協(xié)定:
3、不可以用開源代碼的作者或組織,以及原來的產(chǎn)品的名字做市場推廣:
代碼的共產(chǎn)主義運動:
文件系統(tǒng)、文件、目錄:
倒置樹狀結(jié)構(gòu):
目錄:
文件:
文件名:嚴(yán)格區(qū)分字符大小寫: 路徑分隔符/:
路徑:
絕對路徑
相對路徑
程序的組成部分:二進(jìn)制程序文件、庫文件、配置文件、幫助文件:
二進(jìn)制、庫文件:可執(zhí)行文件, 只能被調(diào)用時執(zhí)行
配置文件、幫助文件:可被查看其內(nèi)容的文件
<<穿越計算機的迷霧>>、 <<量子物理史話>>>
人機交互界面:
GUI
CLI
Linux基礎(chǔ)知識
命令的語法通用格式:
COMMAND OPTIONS ARGUMENTS
發(fā)起一命令:請求內(nèi)核將某個二進(jìn)制程序運行為一個進(jìn)程:
程序-->進(jìn)程
靜態(tài)->動態(tài)
命令本事是一個可執(zhí)行的程序文件:二進(jìn)制格式文件, 有可能會調(diào)用共享庫文件:
多數(shù)程序文件都存放在: /bin, /sbin, /usr/bin, /usr/sbin, ?/usr/local/bin, /usr/local/sbin
管理命令: /sbin, /usr/sbin, /usr/local/sbin
共享庫: ?/lib, /lib64, /usr/lib, /usr/lib64, /usr/local/lib, /usr/local/lib64
32bits的庫: /lib, /usr/lib, /usr/local/lib
64bits的庫:/lib64, /usr/lib64, /usr/local/lib64
命令必須遵循特定格式規(guī)范: exe, msi, ELF(Linux)
file /bin/ls
命令分為兩類:
由shell程序自帶的命令: 內(nèi)置命令(builtin)
獨立的可執(zhí)行程序文件,文件名即命令名:外部命令
Shell程序是獨特的程序, 負(fù)責(zé)解析用戶提供的命令
環(huán)境變量: PATH:
PATH:從哪些路徑中查找用戶鍵入命令字符串
~]# echo $PATH
/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin:/root/bin
查找次序:自左而右:
查看命令類型:
Type COMMAND
OPTIONS:
指定命令的運行特性:
選項有兩種表示形式:
短選項: -C,例如-l, -d
注意:有些命令的選項沒有-:
如果同一命令同時使用多個短選項,多數(shù)可合并: -l -d -ld
長選項: --word,例如--help, --human-readable
注意:長選項不能合并:
注意:有些選項可以帶參數(shù),此成為選項參數(shù):
ARGUMENTS:
命令的作用對象:命令對什么生效:
注意:不同的命令參數(shù): 有些命令可同時帶多個參數(shù), 多個之間以空白字符分隔:
例如: ls -ld /var /etc
獲取命令的使用幫助:
內(nèi)部命令:
help COMMAND
外部命令:
(1)命令自帶簡要格式的使用幫助
# COMMAND --help
(2)使用手冊: ?manual
位置: /usr/share/man
#man COMMAND
SECTION:
NAME:功能性說明
SYNOPSIS:語法格式
DESCRIPTION:描述
OPTION:選項
EXAMPLES:使用示例
AUTHOR:作者
BUGS:報告程序bug的方式
SEE ALSO:參考
...
SYNOPTIONS:
[]:可選內(nèi)容:
<>:必須提供的內(nèi)容
a|b|c:多選一:
.........同類內(nèi)容可以出現(xiàn)多個:
使用手冊:壓縮格式的文件, 有章節(jié)之分:
/usr/share/man
man1, ,man2, .......
1:用戶命令:
2:系統(tǒng)調(diào)用
3:C庫調(diào)用
4:設(shè)備文件及特殊文件
5:文件格式: (配置文件格式)
6:游戲使用幫助:
7:雜項
8:管理工具及守護(hù)進(jìn)行
~]# man CHAPTER COMMAND
注意:并非每個COMMAND在所有章節(jié)下都有手冊:
查看
~]# whatis COMMAND
注意:其執(zhí)行過程式查詢數(shù)據(jù)庫進(jìn)行的:
手動更新數(shù)據(jù)庫:
~]# makewhatis
Man命令打開手冊以后的操作方法:
翻屏:
空格鍵:向文件尾翻一屏:
b:向文件首部翻一屏:
Ctrl+d:向文件尾部翻半屏:
Ctrl+u:向文件首部翻半屏:
回車鍵:向文件尾部翻一行:
K:向文件首部翻一行:
G:跳轉(zhuǎn)至最后一行:
#G:跳轉(zhuǎn)至指定行:
1G:跳轉(zhuǎn)至文件首部:
文本搜索:
/keyword:從文件首部向文件尾部依次查找: 不區(qū)分字符大小寫:
?keyword:從文件尾部向文件首部依次查找:
n:與查找命令方向相同:
N:與查找命令方向相反:
退出:
q: quit
選項:
-M /PATH/TO/SOMEDIR:到指定目錄下查找命令手冊并打開之:
練習(xí):獲取useradd命令的用法
(1)添加用戶gentoo:
#useradd gentoo
#id gentoo
(2)添加用戶slackware, 要求指定其所用的shell為/bin/tcsh:
#useradd -s /bin/tcsh slackware
#tail -l /etc/passwd
(3)info COMMAND
獲取命令的在線文檔:
(4)很多應(yīng)用程序會自帶幫助文檔: /usr/share/doc/APP-VERSION
INSTALL:安裝幫助:
CHANGES:版本迭代時的改動信息:
(5)主流發(fā)行版官方文檔
(6)程序官方的文檔:
官方站點上的”Document”
(7)搜索引擎
Keyword filetype:pdf
Keyword site:domain.tld
...
書籍的出版社:
O’Reiley
Wrox
機械工業(yè)、電子工業(yè)、人郵、清華大學(xué)、水利水電
??|????