不一樣Linux發行版的命令數量不同,但Linux發行版本最少的命令也有200多個。這裏我把比較重要和使用頻率最多的命令,按照它們在系統中的做用分紅下面六個部分一一介紹。html
◆ 安裝和登陸命令:login、shutdown、halt、reboot、install、mount、umount、chsh、exit、last;node
◆ 文件處理命令:file、mkdir、grep、dd、find、mv、ls、diff、cat、ln;正則表達式
◆ 系統管理相關命令:df、top、free、quota、at、lp、adduser、groupadd、kill、crontab;ubuntu
◆ 網絡操做命令:ifconfig、ip、ping、netstat、telnet、ftp、route、rlogin、rcp、finger、mail、 nslookup;安全
◆ 系統安全相關命令:passwd、su、umask、chgrp、chmod、chown、chattr、sudo ps、who;網絡
◆ 其它命令:tar、unzip、gunzip、unarj、mtools、man、unendcode、uudecode。ide
下面詳細介紹的這些命令:是平常Linux下最爲經常使用的基本命令,也是軟件測試人員必須掌握的。工具
ls 查看文件與目錄性能
用法: ls [參數][文件]測試
主要參數
-a, --all:不隱藏任何以「.」 字符開始的項目。
-A, --almost-all:列出除了「 . 」及 「.. 」之外的任何項目。
--author:印出每一個文件著做者。
-b, --escape:以八進制溢出序列表示不可打印的字符。
--block-size=大小:塊以指定<大小>的字節爲單位。
-B, --ignore-backups:不列出任何以 ~ 字符結束的項目。
-f:不進行排序,-aU參數生效,-lst參數失效。
-F, --classify:加上文件類型的指示符號 (*/=@| 其中一個)。
-g:like -l, but do not list owner。
-G, --no-group:inhibit display of group information。
-i, --inode:列出每一個文件的inode號。
-I, --ignore=樣式:不印出任何符合Shell萬用字符<樣式>的項目。
-k:即--block-size=1K。
-l:使用較長格式列出信息。
-L, --dereference:當顯示符號連接的文件信息時,顯示符號連接所指示的對象,而並不是符號連接自己的信息。
-m:全部項目以逗號分隔,並填滿整行行寬。
-n, --numeric-uid-gid:相似-l,但列出UID及GID號。
-N, --literal:列出未經處理的項目名稱,例如不特別處理控制字符。
-p, --file-type:加上文件類型的指示符號 (/=@| 其中一個)。
-Q, --quote-name:將項目名稱括上雙引號。
-r, --reverse:依相反次序排列。
-R, --recursive:同時列出全部子目錄層。
-s, --size:以塊大小爲序。
cd 切換目錄
cd .. 返回上一層目錄
cd . 進入當前目錄
cd - 返回前一次的目錄,即上一次的目錄不是上一層目錄
stat 顯示文件詳細信息
顯示文件權限、屬性、大小、修改時間、訪問時間等 比ls –l更加詳細
用法:stat 文件名
grep 文本搜索/過濾
用法:grep [參數] 搜索字符串 一般與管道命令一塊兒用 搜索某個文件的某個字符
Grep命令很是強大,系統管理員常常會用到它。grep命令能夠在文件中搜索指定格式的字符串,同時對其進行標準輸出。
語法: grep " "
grep "Mathew" test.txt
root@devopscube:~# grep "dennis" test.txt
4 dennis start beginner jul
上面命令的輸出結果是包含該子字符串的,若是你想檢索完整的單詞,你須要添加「-i」選項。同時,也能夠用grep命令在多個文件中搜索字符串,命令代碼以下:
while(!game_over)
{
for each possible move:
count_no_of_merges_for_2-tiles and 4-tiles
choose the move with large number of merges
}
grep "dennis" test1.txt test2.txt test3.txt
固然你也能夠用正則表達式來匹配字符串。
參數:
-c:只輸出匹配行的計數。
-I:不區分大小寫(只適用於單字符)。
-h:查詢多文件時不顯示文件名。
-l:查詢多文件時只輸出包含匹配字符的文件名。
-n:顯示匹配行及行號。
-s:不顯示不存在或無匹配文本的錯誤信息。
-v:顯示不包含匹配文本的全部行。
pattern正則表達式主要參數:
\:忽略正則表達式中特殊字符的原有含義。
^:匹配正則表達式的開始行。
$: 匹配正則表達式的結束行。
\<:從匹配正則表達式的行開始。
\>:到匹配正則表達式的行結束。
[ ]:單個字符,如[A]即A符合要求 。
[ - ]:範圍,如[A-Z],即A、B、C一直到Z都符合要求 。
. :全部的單個字符。
* :有字符,長度能夠爲0。
find 查找文件
用法:find [PATH] [option] [ -print]
path指定目錄路徑,系統從這裏開始沿着目錄樹向下查找文件。它是一個路徑列表,相互用空格分離,若是不寫path,那麼默認爲當前目錄。
find命令用來檢索文件,能夠用「-name」選項來檢索指定名稱的文件:
find -name find -name test.txt
root@devopscube:/home/ubuntu# cd ~
root@devopscube:~# find -name test.txt
./demo/test.txt
./test.txt
你也能夠用「/ -name」來檢索指定名稱的文件夾:
find / -name passwd
root@devopscube:~# find / -name passwd
/etc/cron.daily/passwd
/etc/pam.d/passwd
/etc/passwd
/usr/share/lintian/overrides/passwd
參數:
-name filename #查找名爲filename的文件
-perm #按執行權限來查找
-user username #按文件屬主來查找
-group groupname #按組來查找
-mtime -n +n #按文件更改時間來查找文件,-n指n天之內,+n指n天之前
-ctime -n +n #按文件建立時間來查找文件,-n指n天之內,+n指n天之前
-size +-n[c] #查長度爲n塊[或n字節]的文件(+-爲大於小於)
grep 與 find 命令的區別:grep搜索的是文本,find搜索的是文件,換句話說就是grep是查找匹配條件的行,find是搜索匹配條件的文件。
PS 進程查看命令
使用該命令能夠肯定有哪些進程正在運行和運行的狀態、進程是否結束、進程有沒有殭屍、哪些進程佔用了過多的資源ps是顯示瞬間進程的狀態,並不動態連續;若是想對進程進行實時監控應該用top命令
-A 將全部進程都顯示出來
-a 不與terminal有關的全部進程
-x通常與a參數一塊兒使用,可列出較完整的信息
-f 作一個更爲完整的輸出
ps -T -p -T開啓線程查看
top 查看各進程CPU/內存佔用
Linux下經常使用的性能分析工具,可以實時顯示系統中各個進程的資源佔用情況(cpu/內存)
用法:top [參數]
參數:
-d 顯示兩次刷新時間的間隔,好比 -d 5,表示兩次刷新間隔爲5秒;
-i 禁止顯示空閒進程或殭屍進程;
-n NUM 顯示更新次數,而後退出。好比 -n 5,表示top更新5次數據就退出;
-p PID 僅監視指定進程的ID;PID是一個數值;
-H -p 查看某個進程內的線程運行情況
top與ps命令的異同點:
相同點:top與ps均可以查看進程信息;
區別:ps看到的是命令執行瞬間的進程信息,而top命令則能夠持續的監視進程;ps只是查看進程,而top還能夠監視系統性能,例如cpu/內存/負載等
kill、kill all 刪除進程
kill [信號代碼] PID 信號代碼能夠省略,們經常使用的信號代碼是-9 ,表示強制終止;
Kill all 進程名 經過程序的名字,直接殺死全部進程
kill與killall的區別:kill後面接的是PID,killall後面接的是進程名
補充一個知識點:init進程
init是Linux系統操做中不可缺乏的程序之一。所謂的init進程,它是一個由內核啓動的用戶級進程。init始終是第一個進程(其進程編號始終爲1),而其它全部進程都是init進程的子孫。init進程是不可殺的,也殺不死!
pwd 顯示當前目錄
顯示當前的命令,該命令很是簡單
help\man 幫助命令
有了這兩個命令,遇到任何不會的Linux命令,你均可以查看它們的使用方法。
用法:
命令 --help
man 命令
該命令能夠顯示指定命令的用法和描述。好比你想知道ls命令的用法和選項,能夠在終端執行「man ls」:
語法: man
man ls
出處:http://wemedia.ifeng.com/75822284/wemedia.shtml