課程網(wǎng)址
http://study.163.com/course/courseMain.htm?courseId=232007
基本操作與獲取幫助
- 按一次TAB對命令/文件名的首幾個字母進(jìn)行唯一自動補(bǔ)全(只要是唯一的即可),連按兩次自動搜索以首幾個字母開頭的命令,但無法自動補(bǔ)全參數(shù)
- 按history查看命令輸入的歷史
- 按↑或↓切換到上一條或者下一條命令
- 對歷史記錄進(jìn)行操作寫腳本通常用!+XXXXX的命令
- ctrl+R 在歷史記錄中搜索命令
- 重新調(diào)用前一個命令中的參數(shù) 按ESC之后按 . 鍵
獲取幫助
- 幾乎所有命令都可以用 -h 或 --help 獲取使用幫助
- man命令,把想要獲取幫助的命令作為man的參數(shù)即可
- 如 man ls
- man cat
- man -k+關(guān)鍵字 查詢所有包含該關(guān)鍵字的文檔
- info與man類似,但提供的信息更為詳細(xì),以類似網(wǎng)頁的形式顯示
- 進(jìn)入文檔之后info和man都可以用 /+關(guān)鍵字 進(jìn)行搜索
- 很多程序/命令都帶有詳細(xì)的文檔,以TXT/PDF/HTML保存在/usr/share/doc目錄中,這些文檔是最詳盡的
- 再沒有就用Google
后臺命令
- 在后臺運(yùn)行進(jìn)程:在命令后添加一個 &
- 暫停某個程序:Ctrl+Z或者發(fā)送信號17
- 查看所有進(jìn)程:jobs
- 后臺一個進(jìn)程:bg
- 前臺一個進(jìn)程:fg
文件命令
- bash即為工作終端
- 輸出當(dāng)前工作目錄:pwd
- 以 . 開頭的文件為隱藏文件,絕大多數(shù)都是配置文件
- touch創(chuàng)建一個空白文件或者更新已有文件的時間
- 用file查看文件類型
- cd .. 上一級目錄;cd . 當(dāng)前目錄;cd - 返回上一個工作目錄;cd ~/cd 進(jìn)入用戶的家目錄
- mv移動與重命名
- cp復(fù)制
- rm刪除(-r遞歸刪除文件夾和其中的所有文件 -i交互式(刪一個文件之前讓我們按y/n)-f強(qiáng)制刪除)
- mkdir創(chuàng)建一個文件夾
- rmdir不能直接刪除非空文件夾 必須用(rm -r(-f) 命令刪除非空文件夾)
日期時間
- date 系統(tǒng)時間
- hwclock 顯示硬件時鐘時間
- cal 日歷
- uptime 查看系統(tǒng)運(yùn)行時間
輸出查看命令
- echo 用以顯示輸入的內(nèi)容
- cat 顯示文件內(nèi)容
- head 顯示文件的頭幾行 (-n 指定查看行數(shù)(默認(rèn)10))
- tail顯示文件的末幾行 (-n 指定查看行數(shù)(默認(rèn)10) -f 追蹤顯示文件更新(一般用于查看日志,命令不會退出而是持續(xù)顯示新加入的內(nèi)容))
- more 用于翻頁顯示文件內(nèi)容(只能向下翻頁)
- less 用于翻頁顯示文件內(nèi)容(能上下翻頁)
查看硬件信息
- lspci 查看PCI設(shè)備
- lsusb 查看usb設(shè)備
- lsmod 查看加載的模塊(驅(qū)動)
關(guān)機(jī)/重啟
- shutdown [關(guān)機(jī)/重啟] 時間
- poweroff 立即關(guān)機(jī)
- reboot 立即重啟
壓縮/歸檔
歸檔與壓縮不一樣 歸檔是打包不包含壓縮的步驟
- 用tar進(jìn)行歸檔
- tar -cvf outfile.tar file
- tar -xvf outfile.tar
- tar -cvzf outfile.tar.gz file (歸檔并壓縮 -z即執(zhí)行g(shù)zip算法壓縮)
查找
- locate keyword(需要預(yù)先建立的database,或者updatedb更新database)
- find 查找位置 查找參數(shù)
- find . -name *XXXX* (. 為當(dāng)前目錄查找 -name為查找條件(文件名))
- find / -name *.conf (/ 代表為根目錄查找)
- find / -perm 777 (查找所有權(quán)限為777的文件)
- find / -type d (查找所有類型為d的文件)
- find . -name "a*" -exec ls -l {} ; (查找所有首字母為a的文件并作為參數(shù)傳給ls -l)
- find 還有很多查找條件 例如 -user -group -ctime -size -type -name -perm 等等
VIM/VI編輯器
三種模式
- 命令模式
- 插入模式 按i進(jìn)入 按ESC返回命令模式
- ex模式 按:
命令模式
- i 插入模式
- o 在當(dāng)前行下創(chuàng)建一個新行
- dd 刪除整行
- u 撤銷上一個操作
- yy 將當(dāng)前行內(nèi)容放入緩沖區(qū)(復(fù)制當(dāng)前行)
- nyy 復(fù)制n行
- p 將緩沖區(qū)的內(nèi)容放到光標(biāo)后(粘貼)
- / 查找關(guān)鍵字
- r 替換當(dāng)前字符
Ex模式
- :w 保存當(dāng)前修改
- :q 退出
- :q! 強(qiáng)制退出,不保存修改
- :x 保存并退出,相當(dāng)于:wq
- :set number 顯示行號
- :!系統(tǒng)命令 執(zhí)行這個系統(tǒng)命令
- :sh 切換至命令行,按ctrl+D返回VIM
掛載管理
- mount 要掛載的分區(qū)(/dev/sda3) 掛載點(/mnt)
- 不帶參數(shù)的mount命令顯示所有已經(jīng)掛載的文件系統(tǒng)
- -t 指定文件系統(tǒng)類型
- -o 制定掛載選項........
- unmount 文件系統(tǒng)/掛載點 (即umount /dev/sda3 == umount /mnt/
- 如果出現(xiàn)Device is busy報錯,則表示該文件系統(tǒng)正在被使用,無法卸載
- 可以使用 fuser -m /mnt 查看文件系統(tǒng)的進(jìn)程
- 可以使用 lsof /mnt 查看正在被使用的文件
- 可以通過修改配置文件/etc/fstab 來定義需要自動掛載的文件系統(tǒng),fstab每一行代表一個掛載配置,有固定格式
用戶與組
- 每個用戶都擁有一個UserID(UID),操作系統(tǒng)實際使用的用戶ID而非用戶名
- 每個組擁有一個GroupID,每個用戶屬于一個主組,屬于一個或多個附屬組
- ID為0的為ROOT用戶
- 相關(guān)文件
- /etc/passwd 保存用戶信息
- /etc/shadow 保存用戶密碼(加密的)
- /ec/group 保存組信息
- 查看登陸用戶
- whoami 顯示當(dāng)前用戶
- who 顯示有哪些用戶已經(jīng)登錄系統(tǒng)
- w 顯示有那些用戶已經(jīng)登錄且在干什么
- 創(chuàng)建用戶 useradd
- 修改用戶信息 usermod (mod即為modify的縮寫)
- 刪除用戶 userdel
- groupadd groupmod groupdel
權(quán)限機(jī)制
三種r讀 w寫 x執(zhí)行
UGO 詳細(xì)命令可以找網(wǎng)上的

- chown 更改文件所屬用戶
- chgrp 更改文件所屬組
- ll命令可以查看權(quán)限和所屬用戶和所屬組
- chmod修改文件權(quán)限 (change modify)
- chmod 模式 文件
- u/g/o分別代表用戶/組/其他
- a可以代表ugo
- +/-代表加入或刪除對應(yīng)權(quán)限
- r/w/x代表三種權(quán)限
- 例子
- chmod u+rw testfile
- chmod g-x testfile
- chmod go+r testfile
- chmod a-x testfile

每一個終端都有一個umask屬性,來確定新建的文件/文件夾的默認(rèn)權(quán)限
umask使用數(shù)字權(quán)限方式表示,如:022/002
- 文件夾的默認(rèn)權(quán)限是 777-umask
- 文件的默認(rèn)權(quán)限是 666-umask
- 一般,普通用戶的默認(rèn)umask是002,root的默認(rèn)umask是022
對于普通用戶
- 新建文件的權(quán)限是 666 - 002 = 664
- 新建目錄的權(quán)限是 777 - 002 = 775
命令umask可以查看設(shè)置umask
umask命令后可以看到有四位,第一位為特殊權(quán)限

