軟件測試常用的linux命令


不同Linux發行版的命令數量不一樣,但Linux發行版本最少的命令也有200多個。這里我把比較重要和使用頻率最多的命令,按照它們在系統中的作用分成下面六個部分一一介紹。

◆ 安裝和登錄命令:login、shutdown、halt、reboot、install、mount、umount、chsh、exit、last;

 文件處理命令:file、mkdir、grep、dd、find、mv、ls、diff、cat、ln;

◆ 系統管理相關命令:df、top、free、quota、at、lp、adduser、groupadd、kill、crontab;

◆ 網絡操作命令: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。

下面詳細介紹的這些命令:是日常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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM