軟件測試人員要跟系統軟件經常打交道,所以掌握多一點linux命令是非常有必要的。下面由學習啦小編整理了軟件側市場有的Linux命令總結,希望對你有幫助。
軟件測試常用的Linux命令總結——初級篇
1 目錄與文件操作
1.1 ls(初級)
使用權限:所有人
功能 : 顯示指定工作目錄下之內容(列出目前工作目錄所含之檔案及子目錄)。
參數 :
-a 顯示所有檔案及目錄 (ls內定將檔案名或目錄名稱開頭為"."的視為隱藏檔,不會列出)
-l 除檔案名稱外,亦將檔案型態、權限、擁有者、檔案大小等資訊詳細列出
-r 將檔案以相反次序顯示(原定依英文字母次序)
-t 將檔案依建立時間之先後次序列出
-A 同 -a ,但不列出 "." (目前目錄) 及 ".." (父目錄)
-F 在列出的檔案名稱後加一符號;例如可執行檔則加 "*", 目錄則加 "/"
-R 若目錄下有檔案,則以下之檔案亦皆依序列出
范例:
列出目前工作目錄下所有名稱是 s 開頭的檔案,愈新的排愈後面 :
ls -ltr s*
將 /bin 目錄以下所有目錄及檔案詳細資料列出 :
ls -lR /bin
列出目前工作目錄下所有檔案及目錄;目錄於名稱後加 "/", 可執行檔於名稱後加 "*"
ls –AF常用方式及使用技巧: ls –l 以列表形式輸出當前目錄中存在的文件 ls –lt 按照修改時間倒序排序,即最新的在最上面展示
1.2 ll(初級)
ls –l的縮寫形式
cd(初級)
使用權限 : 所有使用者
使用方式 : cd [dirName]
說明 : 變換工作目錄至 dirName。 其中 dirName 表示法可為絕對路徑或相對路徑。若目錄名稱省略,則變換至使用者的 home directory (也就是剛 login 時所在的目錄)。
另外,"~" 也表示為 home directory 的意思,"." 則是表示目前所在的目錄,".." 則表示目前目錄位置的上一層目錄。
范例 : 跳到 /usr/bin/ : cd /usr/bin
跳到自己的 home directory : cd ~
跳到目前目錄的上上兩層 : cd ../..
返回進入當前目錄前所在目錄:cd -
常用方式及使用技巧:~表示當前用戶的家目錄,另外需要大家關注相對路徑以及絕對路徑的概念
1.3 pwd(初級)
功能:顯示當前工作目錄
范例:$pwd
常用方式及使用技巧:手動打補丁上傳補丁文件時通常先在服務端找到該文件,然後使用pwd將路徑輸出並且拷貝,然後將路徑粘貼到ftp工具的路徑欄中
1.4 mkdir(初級)
名稱: mkdir
使用權限:於目前目錄有適當權限的所有使用者
使用方式:mkdir [-p] dirName
說明:建立名稱為 dirName 之子目錄。
參數:-p 確保目錄名稱存在,不存在的就建一個。
范例:
在工作目錄下,建立一個名為 AAA 的子目錄 :
mkdir AAA
在工作目錄下的 BBB 目錄中,建立一個名為 Test 的子目錄。若 BBB 目錄原本不存在,則建立一個。(注:本例若不加 -p,且原本 BBB目錄不存在,則產生錯誤。)
mkdir -p BBB/Test
1.5 rmdir(初級)
功能說明:刪除目錄。
語 法:rmdir [-p][--help][--ignore-fail-on-non-empty][--verbose][--version][目錄...]
補充說明:當有空目錄要刪除時,可使用rmdir指令。
參 數:
-p或--parents 刪除指定目錄後,若該目錄的上層目錄已變成空目錄,則將其一並刪除。
1.6 rm(初級)
功能說明:刪除文件或目錄。
語 法:rm [-dfirv][--help][--version][文件或目錄...]
補充說明:執行rm指令可刪除文件或目錄,如欲刪除目錄必須加上參數"-r",否則預設僅會刪除文件。
參 數:
-d或--directory 直接把欲刪除的目錄的硬連接數據刪成0,刪除該目錄。
-f或--force 強制刪除文件或目錄。
-i或--interactive 刪除既有文件或目錄之前先詢問用戶。
-r或-R或--recursive 遞歸處理,將指定目錄下的所有文件及子目錄一並處理。
注意:在使用rm –rf * 命令前請使用pwd確定當前目錄,以免發生誤刪除
1.7 head(初級)
功能說明:看一個文件的頭幾行
語法:head –n filename
參數:-n :後面接數字,代表顯示幾行的意思
常用方式及使用技巧:$head -10 error.log
1.8 more(初級)
功能說明:一頁一頁的顯示文件的內容
語法:more filename
使用方式:
空格鍵 (space):代表向下翻一頁;
Enter :代表向下翻『一行』;
/字符串 :代表在這個顯示的內容當中,向下搜尋『字符串』;
:f :立刻顯示出文件名以及目前顯示的行數;
q :代表立刻離開 more ,不再顯示該檔案內容。
常用方式及使用技巧:#ifconfig –a | more
1.9 less(初級)
功能說明:less 與 more 類似,但是比 more 更好的是,他可以往前翻頁!
語法:less filename
使用方式:
空格鍵 :向下翻動一頁;
[pagedown]:向下翻動一頁;
[pageup] :向上翻動一頁;
/字符串 :向下搜尋『字符串』的功能;
?字符串 :向上搜尋『字符串』的功能;
n :重復前一個搜尋 (與 / 或 ? 有關!)
N :反向的重復前一個搜尋 (與 / 或 ? 有關!)
q :離開 less 這個程序;
常用方式及使用技巧:less error.log
1.10 tail(初級)
功能說明:看一個文件末尾n行
語法:tail [ -f ] [ -c Number | -n Number | -m Number | -b Number | -k Number ] [ File ]
使用說明:tail 命令從指定點開始將 File 參數指定的文件寫到標准輸出。如果沒有指定文件,則會使用標准輸入。 Number 變量指定將多少單元寫入標准輸出。 Number 變量的值可以是正的或負的整數。如果值的前面有 +(加號),從文件開頭指定的單元數開始將文件寫到標准輸出。如果值的前面有 -(減號),則從文件末尾指定的單元數開始將文件寫到標准輸出。如果值前面沒有 +(加號)或 -(減號),那麼從文件末尾指定的單元號開始讀取文件。
主要參數:
-f 如果輸入文件是常規文件或如果 File 參數指定 FIFO(先進先出),那麼 tail 命令不會在復制了輸入文件的最後的指定單元後終止,而是繼續從輸入文件讀取和復制額外的單元(當這些單元可用時)。如果沒有指定 File 參數,並且標准輸入是管道,則會忽略 -f 標志。tail -f 命令可用於監視另一個進程正在寫入的文件的增長。
-n Number 從首行或末行位置來讀取指定文件,位置由 Number 變量的符號(+ 或 - 或無)表示,並通過行號 Number 進行位移。
常用方式及使用技巧:tail –f error.log
1.11 cp(初級)
功能說明:復制文件或目錄。
語 法:cp [-abdfilpPrRsuvx][-S <備份字尾字符串>][-V <備份方式>][--help][--spares=<使用時機>][--version][源文件或目錄][目標文件或目錄] [目的目錄]
補充說明:cp指令用在復制文件或目錄,如同時指定兩個以上的文件或目錄,且最後的目的地是一個已經存在的目錄,則它會把前面指定的所有文件或目錄復制到該目錄中。若同時指定多個文件或目錄,而最後的目的地並非是一個已存在的目錄,則會出現錯誤信息。
參 數:
-r 遞歸處理,將指定目錄下的文件與子目錄一並處理。
-R或--recursive 遞歸處理,將指定目錄下的所有文件與子目錄一並處理。 。
常用方式及使用技巧:cp server.xml ../bak
1.12 mv(初級)
功能說明:移動或更名現有的文件或目錄。
語 法:mv [-bfiuv][--help][--version][-S <附加字尾>][-V <方法>][源文件或目錄][目標文件或目錄]
補充說明:mv可移動文件或目錄,或是更改文件或目錄的名稱。
參 數:
-b或--backup 若需覆蓋文件,則覆蓋前先行備份。
-f或--force 若目標文件或目錄與現有的文件或目錄重復,則直接覆蓋現有的文 件或目錄。
-i或--interactive 覆蓋前先行詢問用戶。
常用方式及使用技巧:mv server.xml server.xml_bak
1.13 chmod(初級)
功能說明:變更文件或目錄的權限。
語 法:chmod [-cfRv][--help][--version][<權限范圍>+/-/=<權限設置...>][文件或目錄...] 或 chmod [-cfRv][--help][--version][數字代號][文件或目錄...] 或 chmod [-cfRv][--help][--reference=<參考文件或目錄>][--version][文件或目錄...]
補充說明:在UNIX系統家族裡,文件或目錄權限的控制分別以讀取,寫入,執行3種一般權限來區分,另有3種特殊權限可供運用,再搭配擁有者與所屬群組管理權限范圍。您可以使用chmod指令去變更文件與目錄的權限,設置方式采用文字或數字代號皆可。符號連接的權限無法變更,如果您對符號連接修改權限,其改變會作用在被連接的原始文件。權限范圍的表示法如下:
u:User,即文件或目錄的擁有者。
g:Group,即文件或目錄的所屬群組。
o:Other,除了文件或目錄擁有者或所屬群組之外,其他用戶皆屬於這個范圍。
a:All,即全部的用戶,包含擁有者,所屬群組以及其他用戶。
有關權限代號的部分,列表於下:
r:讀取權限,數字代號為"4"。
w:寫入權限,數字代號為"2"。
x:執行或切換權限,數字代號為"1"。
-:不具任何權限,數字代號為"0"。
s:特殊?b>功能說明:變更文件或目錄的權限。
參 數:
-c或--changes 效果類似"-v"參數,但僅回報更改的部分。
-f或--quiet或--silent 不顯示錯誤信息。
-R或--recursive 遞歸處理,將指定目錄下的所有文件及子目錄一並處理。
<權限范圍>+<權限設置> 開啟權限范圍的文件或目錄的該項權限設置。
<權限范圍>-<權限設置> 關閉權限范圍的文件或目錄的該項權限設置。
<權限范圍>=<權限設置> 指定權限范圍的文件或目錄的該項權限設置。
常用方式及使用技巧:chmod +x *
1.14 chown(初級)
功能說明:變更文件或目錄的擁有者或所屬群組。
語 法:chown [-cfhRv][--dereference][--help][--version][擁有者.<所屬群組>][文件或目錄..] 或chown [-chfRv][--dereference][--help][--version][.所屬群組][文件或目錄... ...] 或chown [-cfhRv][--dereference][--help][--reference=<參考文件或目錄>][--version][文件或目錄...]
補充說明:在UNIX系統家族裡,文件或目錄權限的掌控以擁有者及所屬群組來管理。您可以使用chown指令去變更文件與目錄的擁有者或所屬群組,設置方式采用用戶名稱或用戶識別碼皆可,設置群組則用群組名稱或群組識別碼。
參 數:
-c或--changes 效果類似"-v"參數,但僅回報更改的部分。
-f或--quite或--silent 不顯示錯誤信息。
-R或--recursive 遞歸處理,將指定目錄下的所有文件及子目錄一並處理。
常用方式及使用技巧:chown –R portal:JavaMegroup JavaMe
1.15 wc(初級)
功能說明:計算字數。
語 法:wc [-clw][--help][--version][文件...]
補充說明:利用wc指令我們可以計算文件的Byte數、字數、或是列數,若不指定文件名稱、或是所給予的文件名為“-”,則wc指令會從標准輸入設備讀取數據。
參 數:
-c或--bytes或--chars 只顯示Bytes數。
-l或--lines 只顯示列數。
-w或--words 只顯示字數。
常用方式及使用技巧:netstat –an | grep 1521 | wc -l
軟件測試常用的Linux命令總結——中級篇
1.16 file(中級)
功能說明:辨識文件類型。
語 法:file [-beLvz][-f <名稱文件>][-m <魔法數字文件>...][文件或目錄...]
補充說明:通過file指令,我們得以辨識該文件的類型。
參 數:
-b 列出辨識結果時,不顯示文件名稱。
-c 詳細顯示指令執行過程,便於排錯或分析程序執行的情形。
-f<名稱文件> 指定名稱文件,其內容有一個或多個文件名稱呢感,讓file依序辨識這些文件,格式為每列一個文件名稱。
-L 直接顯示符號連接所指向的文件的類別。
-m<魔法數字文件> 指定魔法數字文件。
-v 顯示版本信息。
-z 嘗試去解讀壓縮文件的內容。
常用方式及使用技巧:file common.xml
1.17 find(中級)
功能說明:查找文件或目錄。
語 法:find [目錄...][-amin <分鐘>][-anewer <參考文件或目錄>][-atime <24小時數>][-cmin <分鐘>][-cnewer <參考文件或目錄>][-ctime <24小時數>][-daystart][-depyh][-empty][-exec <執行指令>][-false][-fls <列表文件>][-follow][-fprint <列表文件>][-fprint0 <列表文件>][-fprintf <列表文件><輸出格式>][-fstype <文件系統類型>][-gid <群組識別碼>][-group <群組名稱>][-help][-ilname <范本樣式>][-iname <范本樣式>][-inum <inode編號>][-ipath <范本樣式>][-iregex <范本樣式>][-links <連接數目>][-lname <范本樣式>][-ls][-maxdepth <目錄層級>][-mindepth <目錄層級>][-mmin <分鐘>][-mount]
[-mtime <24小時數>][-name <范本樣式>][-newer <參考文件或目錄>][-nogroup][noleaf] [-nouser][-ok <執行指令>][-path <范本樣式>][-perm <權限數值>][-print][-print0][-printf <輸出格式>][-prune][-regex <范本樣式>][-size <文件大小>][-true][-type <文件類型>][-uid <用戶識別碼>][-used <日數>][-user <擁有者名稱>][-version][-xdev][-xtype <文件類型>]
補充說明:find指令用於查找符合條件的文件。任何位於參數之前的字符串都將被視為欲查找的目錄。
參 數:
-amin<分鐘> 查找在指定時間曾被存取過的文件或目錄,單位以分鐘計算。
-anewer<參考文件或目錄> 查找其存取時間較指定文件或目錄的存取時間更接近現在的文件或目錄。
-atime<24小時數> 查找在指定時間曾被存取過的文件或目錄,單位以24小時計算。
-cmin<分鐘> 查找在指定時間之時被更改的文件或目錄。
-cnewer<參考文件或目錄> 查找其更改時間較指定文件或目錄的更改時間更接近現在的文件或目錄。
-ctime<24小時數> 查找在指定時間之時被更改的文件或目錄,單位以24小時計算。
-daystart 從本日開始計算時間。
-depth 從指定目錄下最深層的子目錄開始查找。
-expty 尋找文件大小為0 Byte的文件,或目錄下沒有任何子目錄或文件的空目錄。
-exec<執行指令> 假設find指令的回傳值為True,就執行該指令。
-false 將find指令的回傳值皆設為False。
-fls<列表文件> 此參數的效果和指定"-ls"參數類似,但會把結果保存為指定的列表文件。
-follow 排除符號連接。
-fprint<列表文件> 此參數的效果和指定"-print"參數類似,但會把結果保存成指定的列表文件。
-fprint0<列表文件> 此參數的效果和指定"-print0"參數類似,但會把結果保存成指定的列表文件。
-fprintf<列表文件><輸出格式> 此參數的效果和指定"-printf"參數類似,但會把結果保存成指定的列表文件。
-fstype<文件系統類型> 只尋找該文件系統類型下的文件或目錄。
-gid<群組識別碼> 查找符合指定之群組識別碼的文件或目錄。
-group<群組名稱> 查找符合指定之群組名稱的文件或目錄。
-ilname<范本樣式> 此參數的效果和指定"-lname"參數類似,但忽略字符大小寫的差別。
-iname<范本樣式> 此參數的效果和指定"-name"參數類似,但忽略字符大小寫的差別。
-inum<inode編號> 查找符合指定的inode編號的文件或目錄。
-ipath<范本樣式> 此參數的效果和指定"-ipath"參數類似,但忽略字符大小寫的差別。
-iregex<范本樣式> 此參數的效果和指定"-regexe"參數類似,但忽略字符大小寫的差別。
-links<連接數目> 查找符合指定的硬連接數目的文件或目錄。
-iname<范本樣式> 指定字符串作為尋找符號連接的范本樣式。
-ls 假設find指令的回傳值為True,就將文件或目錄名稱列出到標准輸出。
-maxdepth<目錄層級> 設置最大目錄層級。
-mindepth<目錄層級> 設置最小目錄層級。
-mmin<分鐘> 查找在指定時間曾被更改過的文件或目錄,單位以分鐘計算。
-mount 此參數的效果和指定"-xdev"相同。
-mtime<24小時數> 查找在指定時間曾被更改過的文件或目錄,單位以24小時計算。
-name<范本樣式> 指定字符串作為尋找文件或目錄的范本樣式。
-newer<參考文件或目錄> 查找其更改時間較指定文件或目錄的更改時間更接近現在的文件或目錄。
-nogroup 找出不屬於本地主機群組識別碼的文件或目錄。
-noleaf 不去考慮目錄至少需擁有兩個硬連接存在。
-nouser 找出不屬於本地主機用戶識別碼的文件或目錄。
-ok<執行指令> 此參數的效果和指定"-exec"參數類似,但在執行指令之前會先詢問用戶,若回答"y"或"Y",則放棄執行指令。
-path<范本樣式> 指定字符串作為尋找目錄的范本樣式。
-perm<權限數值> 查找符合指定的權限數值的文件或目錄。
-print 假設find指令的回傳值為True,就將文件或目錄名稱列出到標准輸出。格式為每列一個名稱,每個名稱之前皆有"./"字符串。
-print0 假設find指令的回傳值為True,就將文件或目錄名稱列出到標准輸出。格式為全部的名稱皆在同一行。
-printf<輸出格式> 假設find指令的回傳值為True,就將文件或目錄名稱列出到標准輸出。格式可以自行指定。
-prune 不尋找字符串作為尋找文件或目錄的范本樣式。
-regex<范本樣式> 指定字符串作為尋找文件或目錄的范本樣式。
-size<文件大小> 查找符合指定的文件大小的文件。
-true 將find指令的回傳值皆設為True。
-typ<文件類型> 只尋找符合指定的文件類型的文件。
-uid<用戶識別碼> 查找符合指定的用戶識別碼的文件或目錄。
-used<日數> 查找文件或目錄被更改之後在指定時間曾被存取過的文件或目錄,單位以日計算。
-user<擁有者名稱> 查找符合指定的擁有者名稱的文件或目錄。
-version或--version 顯示版本信息。
-xdev 將范圍局限在先行的文件系統中。
-xtype<文件類型> 此參數的效果和指定"-type"參數類似,差別在於它針對符號連接檢查。
常用方式及使用技巧:find ./ -name “*.xml” xargs –print | grep –i “time-out”
1.18 grep(中級)
功能說明:查找文件裡符合條件的字符串。
語 法:grep [-abcEFGhHilLnqrsvVwxy][-A<顯示列數>][-B<顯示列數>][-C<顯示列數>][-d<進行動作>][-e<范本樣式>][-f<范本文件>][--help][范本樣式][文件或目錄...]
補充說明:grep指令用於查找內容包含指定的范本樣式的文件,如果發現某文件的內容符合所指定的范本樣式,預設grep指令會把含有范本樣式的那一列顯示出來。若不指定任何文件名稱,或是所給予的文件名為“-”,則grep指令會從標准輸入設備讀取數據。
參 數:
-i或--ignore-case 忽略字符大小寫的差別。
-v或--revert-match 反轉查找。
常用方式及使用技巧:find ./ -name “*.xml” xargs –print | grep –i “time-out”
1.19 diff(中級)
功能說明:比較文件的差異。
語 法:diff [-abBcdefHilnNpPqrstTuvwy][-<行數>][-C <行數>][-D <巨集名稱>][-I <字符或字符串>][-S <文件>][-W <寬度>][-x <文件或目錄>][-X <文件>][--help][--left-column][--suppress-common-line][文件或目錄1][文件或目錄2]
補充說明:diff以逐行的方式,比較文本文件的異同處。所是指定要比較目錄,則diff會比較目錄中相同文件名的文件,但不會比較其中子目錄。
參 數:
-r或--recursive 比較子目錄中的文件。
常用方式及使用技巧:diff server.xml server.xml_bak
軟件測試常用的Linux命令總結——高級篇
3.12 yast(高級)
功能說明:YaST是中心管理和安裝工具,用於完成大多數管理性任務,類似於Windows的控制面板
補充說明:需要以root用戶來執行
語法:
#yast得到如下界面
我們常用Network Device選項為網卡綁定IP地址以及路由,另外使用Network service中的Network services(xinetd)開通各種網絡服務:如ftp、telnet等、Remote Administration開通系統遠程服務,NFS Server以及NFS Client開通NFS服務。
另外,如果使用XManager等圖形界面登錄系統,可以使用yast2&命令,如下圖:
可以使用鼠標進行選擇操作。