摘要:【筆記整理】CentOS常用指令整理( E ~ H )
整理一下有關CentOS的相關常用指令,
基本上從man上查看會比較完整,下列只是一些簡單及常見的組合應用。
當然也會增加一些相關註解。
1. eject:退出或收回光碟機
a. eject -a 參數:自動退出,若參數為『on』或『1』,則裝置卸載時會自動退出,反之為『off』或『0』則否
b. eject -c 光碟編號:選擇光碟機,編號依序為0、1、2....
c. eject /mnt/cdrom1:若是掛載的第二台光碟機在『/mnt/cdrom1』上
d. eject -t:收回光碟機。
註:部分不支援,ex.slim cdrom
2. fdisk:修改磁碟分割區
a. fdisk -l /dev/sda:列出指定的分割表(ex. 『/dev/sda』)
b. 內容設定可參考:http://www.dotblogs.com.tw/ghoseliang/archive/2012/09/25/75031.aspx
3. fgrep:搜尋檔案中符合條件的字串,等同執行『grep -F』
a. fgrep diff *:列出所有包含串『diff』的檔案
4. find:尋找特定字串的檔案或目錄名稱
用法:find PATH [ option ] [ action ]
01. find / -mtime 0:將系統上24小時(一天)內有更動過內容(mtime)的檔案列出。『0』為目前的時間。
註:『-mtime n』為列出n天前那一天被更動過內容的檔案;『-mtime +n』為列出在n天之前(不含n天)被更動過
內容的檔案;『-mtime -n』為列出在n天之內(含n天)被更動過內容的檔案。
註:『mmin』以『分鐘』為單位,後面數字用法與『mtime』相同。
02. find /etc/ -newer /etc/passwd:在目錄『/etc/』中,列出比檔案『/etc/passwd』的時間還『新』的檔案。
03. find . -name "test*":在目前目錄中尋找以『test』開頭的檔案
04. find . -iname "*a":在目前目錄中尋找『a』(不區分大小寫)結尾的檔案。
05. find . -not -name "test*":在目前目錄中尋找『非以test』開頭的檔案
06. find . -perm 755:在目前目錄中尋找權限為『755』的檔案
07. find . -type f -name "test*":在目前目錄中尋找檔案類型為『 f (regular file) 』,名稱開頭為『test』的檔案
註:『-type』搜尋檔案類型,『f』為一般檔案;『b,c』為裝置檔案,『b』為block device,
『c』為char device;『d』為目錄;『l』為連結檔;『s』為socket;『p』為FIFO(命名管道)。
08. find /tmp/Test -type f | wc -l:計算在目錄『/tmp/Test』中有多少個檔案
09. find . -name "test*" -exec rm -i {} \;:在目前目錄中尋找以『test』開頭的檔案,並刪除。
註:相似指令『find . -name "test*" -delete』
註:參數『-exec』後可以加入其他『shell command』,以便進行其他動作。
10. find /etc/ -size 20k:在目錄『/etc』中找出大小為『20kb』的檔案。
註:『+20k』為大小大於20kb;『-20k』為大小小於20kb。
11. find / -user ghose:在目錄『/』中搜尋指定『帳號名稱』的檔案
12. find / -group ghose:在目錄『/』中搜尋指定『群組名稱』的檔案
13. find /tmp/ -empty:搜尋目錄『/tmp/』下所有的『空檔案』
5. file:觀察檔案類型
用法:file [ -bz ] [ -f namefile ] file
01. file iptables.sh:顯示檔案類型
02. file -b iptables.sh:列出檔案類型,但不顯示文件名稱
03. file -f namefile:指定namefile,其內容有一個或多個文件名稱,讓『file』依序辨認這些文件,
格式為每列一個文件名稱
04. file -z test2.z:嘗試解讀壓縮文件的內容
6. free:顯示記憶體使用狀態
a. free -b:以『bytes』為單位顯示記憶體的使用情形
b. free -k:以『KBytes』為單位顯示記憶體的使用情形
c. free -m:以『MBytes』為單位顯示記憶體的使用情形
d. free -g:以『GBytes』為單位顯示記憶體的使用情形
d. free -o:不顯示緩衝區的狀態
e. free -s 5:以5秒為週期持續觀察記憶體使用狀態
f. free -t:顯示記憶體的總和(實體記憶體和虛擬記憶體)
7. gcc:C語言編譯器
範例:
a. gcc test.c:編譯檔案『test.c』為執行檔
執行:./a.out
8. gpasswd:管理/etc/group的進階工具
a. gpasswd root:修改root群組的群組密碼
b. gpasswd -a ghoseliang user:新增帳號ghoseliang到user群組
c. gpasswd -d ghoseliang user:將ghoseliang從user群組刪除帳號
d. gpasswd -A ghoseliang user:設定帳號ghoseliang為user群組的管理員
9. grep:擷取命令,搜尋檔案中符合條件的字串
用法:grep [ -acinrv ] [ -A ] [ -B ] [ --color=auto ] 搜尋字串 filename
用法:grep [ -f ] [ --color=auto ] filename1 filename2
01. grep ghoseliang --color=auto /etc/passwd:從檔案『/etc/passwd』中找出符合字串『ghoseliang』的資料
02. grep -a text filename:將『binary』檔案以『text』檔案的方式搜尋資料
03. last | grep -c 'root':在『last』中計算找到符合『root』次數
04. grep -f test2 test1:搜尋檔案『test1』中包含檔案『test2』中字串的內容
05. grep -i GHOSEliang /etc/passwd:忽略大小寫
06. last | grep -n 'ghose' | cut -f1 -d' ':在『last』中計算找到符合字串『ghoseliang』,並顯示『行號』及
擷取第一欄位
07. grep -r 'test' /tmp/:搜尋指定目錄下所有檔案與目錄
08. last | grep -v 'root':顯示『last』中不含『root』的內容
09. last | grep -n -A2 'ghose':除了搜尋字串『ghose』外,並將搜尋字串的『後兩行』也顯示出來
10. last | grep -n -B3 'ghose':除了搜尋字串『ghose』外,並將搜尋字串的『前三行』也顯示出來
10. groupadd:建立群組
a. groupadd admin:建立admin群組
b. groupadd -r ghose:建立名為ghose的系統群組
11. groupdel:刪除群組
a. groupdel admin:刪除admin群組
12. groupmod:修改群組識別碼或名稱
a. groupmod -n admin ghose:修改群組ghose名稱為admin
13. groups:顯示帳號所屬的群組名稱,類似執行『cat /etc/group』
a. groups ghoseliang:顯示使用者ghoseliang的所屬群組名稱
14. head:資料擷取
用法:head [ -n number ] file
01. head /etc/man.config:顯示檔案內容,預設為顯示『10』行。
02. head -n 50 /etc/man.config:加入參數『-n』並於後面加入數字,可顯示更多行數。
03. head -n -140 /etc/man.config:加入的數字為『負數』,為不顯示行數。如『-140』,則不顯示最後的『140』行。
14. history:歷史命令
用法1:history [ n ]
用法2:history [ -c ]
用法3:history [ -raw ] [ histfiles ]
01. history:列出目前記憶體中所有『history』記憶
註:列出的資訊中,共分為兩欄,第一欄為該指令在這個shell當中的代碼,第二欄為指令本身的內容。
至於會秀出幾筆指令記錄,則與『HISTSIZE』有關。
02. history 5:列出目前最近的5筆資料
03. history -c:將目前『shell』中所有『history』內容全部清除
04. history -a [ histfiles ]:將目前新增的『history』指令新增到『histfiles』中,若沒有加『histfiles』,
則預設寫入『~/.bash_history』。
05. history -r [ histfiles ]:將『histfiles』的內容讀到目前這個『shell』的『history』記憶中
06. history -w [ histfiles ]:將目前的『history』記憶內容立刻(強制)寫入『histfiles』中
註:部分相關應用( 1 - 5 )可參考最下方的『備註』
15. host:查詢主機使用的網域名稱
a. host www.google.com 168.95.1.1:透過168.95.1.1查詢www.google.com
b. host -t mx gmail.com 168.95.1.1:透過168.95.1.1查詢gmail.com的MX Record
16. hostname:顯示及設定主機名稱
a. hostname:顯示目前的主機名稱
b. hostname -i:顯示主機IP
17. hwclock:顯示或設定硬體時間
a. hwclock:顯示硬體時間和日期
b. hwclock --set --date="11/16/2012 16:48:00":修改硬體時間與日期
備註
1. !!:執行『history』中最後一個指令,相當於按『↑』按鍵後,點擊『Enter』鍵
2. !char:由最近的指令向前搜尋『指令串開頭為char』的指令並執行
3. !number:執行history中對應該數字行數的指令
4. Ctrl+r:按下後會出現『reverse-i-search』,可輸入關鍵字而系統會快速尋找相關開頭且執行過的指令
5. 快速呼叫:快速呼叫最後一次執行的『Argument』,如執行『grep ghoseliang /etc/shadow』,
所以『/etc/shadow』即為『Argument』。下列為快速呼叫的三種方式。
01. 按『Esc』後按『.』
02. 按『Alt』後按『.』
03. !$
註:個人覺得沒什麼用,所以還是看個人使用習慣吧。
<......不定時更新、修改、增加中......>
參考