dll:Dynamic Link Librarynode
.so:shared objectshell
認證:Authentication數據庫
受權:Authorization緩存
審計:Audition(日誌)bash
prompt,命令提示符:網絡
命令:less
magic number:魔數socket
shebang編輯器
#!/bin/bashide
目錄
目錄::文件,路徑映射
路徑:從指定起始點到目的地所通過的位置
路徑是 實現層次化文件管理的機制
文件系統:file system
倒置樹狀結構
絕對路徑,相對路徑
working directory 工做目錄,current directory 當前目錄
FHS 文件系統層級結構標準
!問題:文件名是否是文件的數據?
ls:list 列出,列表
-l:長格式
文件類型:
-:普通文件(f)
d:目錄文件
b:塊設備文件(block)
c:字符設備文件(character)
l:符號鏈接文件(sysmbolic link file)
p:命令管道文件(pipe)
s:套接字文件(socket)
文件權限:9位,每3位一組,每一組:rwx
文件硬連接的次數
文件的屬主(owner)
文件的屬組(group)
文件大小(size),單位是字節
時間戳(timestamp)最近一次被修改的時間
訪問:access
修改:modify 文件內容發生了改變
改變:change,metadata 元數據
-h:作單位轉換
-a:顯示以. 開頭的隱藏文件
. 表示當前目錄
.. 上級目錄
-d:顯示目錄自身屬性
-i:index node,inode 索引節點號
-r:逆序顯示
-R:遞歸(recursive)顯示
pwd:printing working directory
cd:change directory
家目錄,主目錄,home directory
cd ~USERNAME:進入指定用戶的家目錄
cd -:在當前目錄和前一次所在的目錄之間來回切換
命令類型:
內置命令(shell內置),內部,內建
外部命令:在文件系統的某個路徑下有一個與命令名稱相同的可執行文件
!問題:什麼是變量?
什麼是堆?什麼是棧?
環境變量:命名的內存空間
變量賦值:
e.g NAME=jerry
PATH:那個冒號分割的一堆路徑
o(1):衡量一個程序執行速度的一種標準
在一個列表中查詢一個數據的速度隨着列表長度變化而發生變化的比例或者叫函數趨勢。
type:顯示指定命令屬於哪一種類型
printenv:顯示環境變量
hash:鍵值數據庫 cache is king 緩存能夠實現系統加速
時間
date:時間管理
Linux時間實現方式:rtc
ntp:network time protocol
硬件時鐘
軟件時鐘
hwclock
-w:將系統時間寫到硬件中
-s :將硬件時間寫到系統中
得到命令的使用幫助
內部命令:
help COMMAND
外部命令:
COMMAND --help
命令手冊:manual
man COMMAND
whatis COMMAND
man的章節:
用戶命令(/bin,/usr/bin,/usr/local/bin) ---User Commands
系統調用 ---System Calls
庫用戶--- C Library Functions
特殊文件(設備文件)---Devices and Special Files
文件格式(配置文件的語法) ---File Formats and Conventions
遊戲---Games et. Al.
雜項---Miscellanea
管理命令(/sbin,/usr/sbin,/usr/locacl/sbin)---System Administration tools and Deamons
< >:必選
[ ]:可選
. . . :能夠出現屢次
| :多選一
{ }:分組,沒有特殊意義
MAN:
NAME:命令名稱功能簡要說明
SYNOPSIS:用法說明,包括可用的選項
DESCRIPTION:命令功能的詳盡說明,包括每個選項的意義
OPTIONS:說明每個選項的意義
FILES:此命令相關的配置文件
BUGS:
EXAMPLES:使用示例
SEE ALSO:另外參照
翻屏:
向後翻一屏:SPACE
向前翻一屏:b
向下翻一行:ENTER
向上翻一行:k
查找:
/KEYWORD 向前
n:下一個
N:前一個
?KEYWORD 向後
n:下一個
N:前一個
退出:q
在線文檔:
info COMMAND
文件系統
rootfs:根文件系統
FHS:Linux
/boot:系統啓動相關的文件,如內核、initrd以及grub(bootloader)
/dev:設備文件
塊設備:隨機訪問,數據塊
字符設備:線性訪問,按字符位單位(鼠標,顯示器)
設備號:主設備號(major)和次設備號(minor)
/etc:配置文件
/home:用戶的家目錄,每個用戶的家目錄一般默認爲/home/USERNAME
/root:管理員的家目錄
/lib:庫文件,庫文件只能被調用,不能被單獨執行
靜態庫:. a
動態庫:. dll ,. so (shared object)
/lib/modules:內核模塊文件
/media:掛載點目錄,一般用來掛載移動設備
/mnt: 一般用來掛載額外的臨時文件系統
/opt:可選目錄
/proc:僞文件系統,內核映射文件
/sys:僞文件系統,跟硬件設備相關的屬性映射文件
/tmp:臨時文件,/var/tmp
/var:可變化的文件
/bin:binary 可執行文件,用戶命令
/sbin:可執行文件,管理命令
/usr:shared ,read-only 全局共享只讀文件
/usr/bin
/usr/sbin
/usr/lib
/usr/local:
/usr/local/bin
/usr/local/sbin
/usr/local/lib
命名規則:
一、長度不能超過255個字符
二、不能使用/當文件名 ,由於/是用來當文件分隔符,以及來表示根目錄的
三、嚴格區分大小寫
文件管理、目錄管理、運行程序、設備管理、軟件管理、進程管理、網絡管理
目錄管理
ls、cd、pwd
mkdir:建立空目錄
-p:parent
-v:verbose 顯示詳細信息
e.g :命令行展開
mkdir -pv /mnt/test/{x/m,y}
a_b,a_c,d_b,d_c
{a,d}_{b,c}
# tree:查看目錄樹
rmdir:remove directory 刪除目錄,只能刪除空目錄
-p
文件管理
touch:建立文件,修改文件時間戳
-a、-m、-t、-c
建立文件,也能夠使用文件編輯器
stat:顯示文件或文件系統的狀態信息
ASCII:美國標準信息交換代碼
字符翻譯標準:BG18030,GBK,GB2312,Unicode
nano
rm:刪除文件
-i:管理員纔有的默認選項,避免誤操做
-f:force 強行刪除
-r:刪除目錄的時候,地櫃刪除如下的全部文件
cp:copy
e.q:cp SRCFILE DEST
cp file1 file2 file3
cp命令只有最後一個出現的纔是目標
一個文件到一個文件
多個文件到一個目錄
cp命令默認只複製文件,不能複製目錄
-r 遞歸
-f force 強行復制,若是目標文件存在直接覆蓋
-i interactive 若是目前存在,提示是否覆蓋
-p preserve 保留文件的屬主,屬組和時間戳
-a archive 保留全部屬性,歸檔複製,經常使用於備份
-P 保持連接
-L 複製連接指向的文件
mv:move 用於移動文件
mv SRC DEST
mv -t DEST SRC
install :copy files and set attributes
-d DIRECTORY
總結:
目錄管理:ls、cd、pwd、mkdir、rmdir、tree
文件管理:touch、stat、file、rm、cp、mv、nano
日期時間:date clock hwclock,cal
查看文本:cat、tac、more、less、head、tail
cat:鏈接並顯示
-n 顯示行號
-E show ends 顯示每一行的行節數符
-A show ALL
tac:倒敘顯示
Ctrl+c
more:向後翻
less:
head:查看前n行
tail:查看後n行
-n
-f:查看文件尾部,不退出,等待顯示後續追加至此文件的新內容
文本處理:
cut、join、sed、awk
database:數據庫
關係型數據庫:
表:二維表
文本文件:
cut:
-d:指定分隔符,默認是空格
-f:指定要顯示的字段
-f 1,3
-f 1-3
e.g cut -d:-f1 /etc/passwd
sort:文本排序,默認是根據字符在ASCII碼錶中的次序升序排列的
-n:按數值大小排列
-r:reverse 逆向
-t:字段分隔符
-k:以哪一個字段爲關鍵字進行排序
-u:排序後相同行只顯示一次
-f:ignore-case 忽略字符大小寫,相鄰且重複的行認定爲重複行,隔行重複不算在內
uniq:report or omit repeated lines
-d:onely print duplicate lines,只顯示重複的行
-D:all-repeated
-c:count 顯示某一行重複的次數
wc:文本統計 word count
-l:只顯示行
-w:只顯示單詞數
-c:只顯示字節數
-m:只顯示字符數
-L:表示最長的一行包含多少字符
tr:字符處理,轉換或刪除字符
tr [OPTION]... SET1 [SET2]