Linux操做系統 開放源代碼,能夠自由獲取,自由修改,自由學習node
Linux的基本原則:
一、由目的單一的小程序組成;組合小程序完成複雜任務;
二、一切皆文件;
三、儘可能避免捕獲用戶接口;
四、配置文件保存爲純文本格式;
CLI接口:
命令提示符,prompt, bash(shell)
#: root
$: 普通用戶
命令格式:
命令 + 選項 + 參數
選項可分爲:
短選項: -
多個選項是能夠組合的如:-a -b = -ab
長選項: --
參數:命令的做用對象
列出指定路徑下的文件:
pwd:能夠顯示當前目錄的路徑
ls:
-l:長格式
文件類型:
-:普通文件 (f)
d: 目錄文件
b: 塊設備文件 (block)
c: 字符設備文件 (character)
l: 符號連接文件(symbolic link file)
p: 命令管道文件(pipe)
s: 套接字文件(socket)
文件權限:9位,每3位一組,每一組:rwx(讀,寫,執行), r--
文件硬連接的次數
文件的屬主(owner)
文件的屬組(group)
文件大小(size),單位是字節
時間戳(timestamp):最近一次被修改的時間
訪問:access
修改:modify,文件內容發生了改變
改變:change,metadata,元數據
-h:作單位轉換
-a: 顯示以.開頭的隱藏文件
. 表示當前目錄
.. 表示父目錄
-A:顯示以.開頭的隱藏文件但不顯示.和..表示的目錄
-d: 顯示目錄自身屬性
-i: index node, inode
-r: 逆序顯示
-R: 遞歸(recursive)顯示
cd: change directory
家目錄,主目錄, home directory
cd ~USERNAME: 進入指定用戶的家目錄
cd -:在當前目錄和前一次所在的目錄之間來回切換
命令類型:
內置命令(shell內置),內部,內建
外部命令:在文件系統的某個路徑下有一個與命令名稱相應的可執行文件
type: 顯示指定屬於哪一種類型
date:時間管理
得到命令的使用幫助:
內部命令:
help COMMAND
外部命令:
COMMAND --help
命令手冊:manual
man COMMAND
whatis 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: 可執行文件, 用戶命令
/sbin:管理命令
/usr:shared, read-only
/usr/bin
/usr/sbin
/usr/lib
/usr/local:
/usr/local/bin
/usr/local/sbin
/usr/local/lib
目錄管理
mkdir:建立空目錄
# tree:查看目錄樹
rmdir (remove directory):刪除目錄
# touch:文件建立和刪除
複製和移動文件
cp: copy
-a:歸檔複製,經常使用於備份
cp file1 file2
一個文件到一個文件
多個文件到一個目錄
cp /etc/{passwd,inittab,rc.d/rc.sysinit} /tmp/
mv: move 移動文件
命令行編輯:
光標跳轉:
Ctrl+a:跳到命令行首
Ctrl+e:跳到命令行尾
Ctrl+u: 刪除光標至命令行首的內容
Ctrl+k: 刪除光標至命令行尾的內容
Ctrl+l: 清屏
命令歷史:
查看命令歷史:history
-c:清空命令歷史
-d OFFSET [n]:刪除指定位置的命令
history -d 500 刪除第500個
-w:保存命令歷史至歷史文件中
歷史保存在 /.bash_history
查看文本:cat tac more less head tail
cat 連接並顯示 -n(顯示行號) -E 顯示每行的結束符 Linux行結束符是$
ctrl+c(終止快捷鍵)
head:查看前n行 head -n
tail:查看後n行
tail -f :查看文件尾部,不退出,等待顯示後續追加至此文件的新內容
文本處理:cut、join、sed、awk
database:數據庫
cat:
-d:指定字段分隔符,默認是空格
-f:指定要顯示的的字段
-f 1,3(1和3)
-f 1-3(1到3)
文本排序:sort (默認升序)
-n 數值大小排序
-r 降序
-t 字段分隔符
-k 以哪一個字段字段爲關鍵字進行排序
-u 排序後相同的行只顯示一次
-f 排序時忽略字符大小寫
-d 只顯示重複的行
-c 顯示每一行重複的次數
文本統計:wc(word count)
(行 單詞數 字節數)
-l 行數
-w 單詞數
-c 字節數(字符數)
-L 最長的一行包含多少個字符
字符處理命令:tr(轉換或刪除字符)
tr 'a-z' 'A-Z'
-d 刪除出如今字符集中的全部字符