內容 大寫 用戶 協議 當前時間 switch 使用 主機 當前

一、linux的基本原則:
1、 由目的單一的小程序組成,組合小程序,完成復雜任務;
2、 一切皆文件;
3、 盡量避免捕獲用戶接口;
4、 配置文件保存為純文本格式
二、shell
技術分享圖片
GUI :Graphic User Interface
X-windows :僅僅是一個外圍軟件,主機和顯示器可以完全分離
Gnome(C),KDE(C++),Xface(嵌入式開發)
CLI :Command Line Interface
sh,bash,csh,ksh,zsh,tcsh
命令提示符(prompt)bash #-->root $-->普通用戶
命令格式
1、命令
2、選項(修正命令執行方式)
短選項:- 多個選項可以組合
長選項:--(通常不能組合使用)
3、參數:命令的作用對象(不加參數表示默認參數)
內核不提供特定任務,提供系統調用,將硬件計算能力抽象提供給上層使用
IDE集成開發環境
三、命令的執行
1、庫:共享庫(動態庫,靜態庫)
.dll(dynamic link library):動態鏈接庫→windows
.so(shared object):共享對象→linux
2、Login:
用戶名:用戶標識,但計算機識別最快的是數字,故每個用戶名都有一個用戶ID
認證機制:Authentication
授權:Authorization
審計:Audition(日誌)
3、命令執行原理
命令:可執行文件必須有程序執行的入口
magic mumbic:魔數(二進制格式)
#!/bin/bash 給文件指定魔數
命令輸入後,程序提交給內核,內核尋找執行程序的魔數

四、linux的目錄結構
目錄:路徑映射,也是一種文件
路徑:從指令起始點到目的地所經過的位置
文件系統:filesystem(層次化管理機制) FHS:文件系統分層標準(倒樹狀結構)
技術分享圖片
絕對路徑:從根開始找 相對路徑:相對於當前位置的路徑
登錄系統默認會存在一個目錄 working directory, current directory
文件名不是文件的數據
五、linux常用命令
命令類型:內置命令(shell內置)
外部命令:在文件系統某個路徑下有與命令名稱相同的可執行文件
環境變量:命名的內存空間,定義當前工作環境屬性
Path:分割一堆路徑
O(1):無論隊列有多長,花費的時間都是一樣的
1、su(switch user):用戶切換
#su user (切換用戶不切換目錄)

技術分享圖片
#su [-][-l] user(切換用戶並切換目錄)
技術分享圖片
#exit 退出切換
技術分享圖片

2、passwd(修改密碼)
密碼復雜性規則:數字,大寫字母,小寫字母,特殊字符
使用四種字符中至少三種,足夠長大於7位,使用隨機字符串,定期更換
3、pwd (print working directory)打印當前目錄
技術分享圖片

4、ls(list)列出目錄內容
1) -l –long 長格式,顯示完整信息
技術分享圖片
完整信息內容
文件類型:普通文件(-)、目錄文件(d)、塊設備文件(b-block)、字符設備文件(c-charecter)、符號鏈接文件(l-symbolic link file)、命令管道文件(p-pipe)、套接字文件(s-socket)
文件權限:9位,每三位一組,rwx(讀,寫,執行)
文件硬鏈接次數
文件屬主(owner)
文件屬組(group)
文件大小(size):默認單位字節
時間戳(timestamp):最近一次被修改的時間
最近一次被訪問的時間,最近一次被修改的時間,最近一次被改變的時間
訪問:access 修改:modify 改變:change,metadata,元數據(屬性)
文件名
2) -h (human 人類可讀的)做單位換算
技術分享圖片
3)-a 顯示以 . 開頭的隱藏文件
. 當前目錄 .. 上一級目錄
-A 不顯示當前目錄和上一級目錄
技術分享圖片
4) -d 顯示自身目錄屬性
技術分享圖片
5)-i index node, inode
技術分享圖片
6) -r 逆序顯示
技術分享圖片
7)-R 遞歸顯示
技術分享圖片
5、cd (change directory)
cd 不加參數,回到家目錄(homedirectory)
技術分享圖片
cd ~ 指定用戶家目錄(同cd一樣)
cd - 當前目錄和前一次目錄來回切換
技術分享圖片
6、type 顯示指定命令屬於那種類型
技術分享圖片
7、printenv 顯示環境變量
8、hash 緩存
技術分享圖片
hash -r 清空緩存
技術分享圖片
9、date 時間管理
硬件時間:石英晶體震蕩器計時
系統時間:linux(rtc實時時鐘)從硬件讀取當前時間,設置為系統時間,讀取後不再使用硬件時間,內核在CPU作用下模擬計時
同步網絡的時間 網絡時間協議ntp
1)系統時間
date 顯示時鐘
技術分享圖片
date 月日時分年秒(修改時間)
技術分享圖片
date 固定格式顯示時間
技術分享圖片
2)硬件時間
clock 顯示硬件時間
hwclock -s 同步硬件時間到系統
技術分享圖片
hwclock -w 同步系統時間到硬件
技術分享圖片
3)同步網絡時間
10、echo 顯示一行文字(內部命令)
-n 行尾取消換行
技術分享圖片
-e 啟用轉義字符
技術分享圖片

六、獲取命令幫助的方式
1、內部命令使用幫助
help command
技術分享圖片

2、外部命令
command --help
技術分享圖片
3、命令手冊
man command(內部命令一般很少使用man查看,查看後為bash)
whatis command/ man -f command 查看命令在哪個章節
技術分享圖片
1)章節內容:
①用戶命令(/bin,/usr/bin,/usr/local/bin)
②系統調用
③庫調用
④特殊文件(設備文件)
⑤文件格式(解釋配置文件)
⑥遊戲
⑦雜項(miscellaneous):慣例與協議
⑧管理命令(/sbin,/usr/sbin,/usr/local/sbin)
⑨內核相關文件
2)組成部分
NAME:命令名稱及功能說明
SYNOPSIS:用法說明,包括可用選項
DESCRIPTION:命令功能詳盡說明,可能包括每一項的意義
OPTIONS:說明每一個選項的意義
FILES:此命令相關配置文件
BUGS:
EXAMPLE:使用實例
SEE ALSO:另外參照
3)相關使用技巧
翻屏:向後翻屏→SPACE 向前翻屏→b 向後翻行→enter 向前翻行→k
查找:向後→/keyword 向前→?keyword n→上一個 N→下一個
退出:q
5、 在線文檔:只是man的補充
Info command
Ls /usr/share/doc

Linux學習筆記之基礎命令與獲取幫助文檔