大家應該經常在網絡上看到下面的命令吧,雖然我們不會去執行下面的命令,但是linux常用的命令對於測試人員來說,還是必須掌握的,不管是做功能測試還是性能測試,最常用的就是看日志了。
sudo是linux系統管理指令,是允許系統管理員讓普通用戶執行一些或者全部的root命令的一個工具,如halt,reboot,su等等。這樣不僅減少了root用戶的登錄 和管理時間,同樣也提高了安全性。
rm表示刪除
-后面是參數,r表示迭代,f表示強制
/表示根目錄,*表示所有
linux目錄結構
參考:https://www.runoob.com/linux/linux-system-contents.html
/usr:系統級的目錄,可以理解為C:/Windows/,/usr/lib可理解為C:/Windows/System32
/usr/local:用戶級的程序目錄,可以理解為C:/Program Files/,用戶自己編譯的軟件默認會安裝到這個目錄下
/opt:用戶級的程序目錄,可以理解為D:/Software
遠程連接工具(xshell)介紹
如果沒有linux服務器,可以安裝虛擬機,參考:
VirtualBox下安裝linux虛擬機:https://www.cnblogs.com/UncleYong/p/10739997.html
VMware下安裝linux虛擬機:https://www.cnblogs.com/UncleYong/p/10740005.html
VMware下安裝Ubuntu虛擬機:https://www.cnblogs.com/UncleYong/p/6896830.html
輸入主機ip
輸入賬號、密碼
echo $LANG
修改編碼
如果是下圖結果,就不用修改,xshell保持默認即可
linux常用命令(測試必備)
man/help
功能說明:幫助手冊
舉 例:查看ls命令的使用方法:man ls; ls --help
ls
功能說明:列出目錄內容
舉 例:列出/var目錄的文件和目錄的信息 :ls -l /var;最常用方式 ls –ltr
cd
功能說明:切換目錄
舉 例:切換到根目錄 :cd /
返回上一級目錄: cd ..
返回上兩級目錄: cd ../..
進入個人的主目錄: cd ~
mkdir
功能說明:創建目錄
舉 例:創建test目錄:mkdir test
rmdir
功能說明:刪除一個空目錄
舉 例:刪除test目錄,rmdir test。rmdir -p test1/test2-p表示連同子目錄一起刪除
touch
功能說明:創建一個空文件
舉 例:創建一個空的test.txt文件:touch test.txt
cat
功能說明:查看小文件內容
舉 例:查看test.txt 文件內容 :cat test.txt
並且顯示行號:cat -n test.txt
往文件中添加內容(如果文件不存在,會創建文件):cat > test.txt
tac
功能說明:反向顯示文檔內容,由最后一行到第一行反向在屏幕上顯示出來,cat和tac相反
chmod
功能說明:修改文件或目錄權限。
舉 例:修改test.sh為自己可執行:chmod u+x test.sh
u表示User,是文件的所有者;g表示跟User同Group的用戶;o表示Other,即其他用戶;a表示ALL,所有用戶
cp
功能說明:拷貝文件
舉 例:拷貝文件test.sh 為 test.sh_bak:cp test.sh test.sh_bak
mv
功能說明:移動或更名現有的文件或目錄
舉 例:移動 test.sh到子目錄t下:mv test.sh ./t/;mv test test1,將test的名稱更名為test2
幾個重要的參數:
-f :force 強制的意思,如果目標已經存在,不會詢問而直接覆蓋
-i :若目標 已經存在時,就會詢問是否覆蓋
-u :若目標已經存在,且 source 比較新,才會更新 (update)
rm
功能說明:刪除文件或目錄。
舉 例:刪除文件test.sh :rm test.sh
find
功能說明:查詢文件
舉 例:查詢本目錄下面的test.txt:find ./ -name test.txt
which
功能說明:在環境變量$PATH設置的目錄里查找符合條件的文件
舉 例:查詢sh命令在那個目錄下面:which sh
grep
功能說明:查找文件里符合條件的字符串
舉 例:從/etc/passwd文件中查詢ztzh的內容: grep ztzh /etc/passwd
/etc/passwd文件格式:
字段 含義
用戶名 用戶登錄系統時使用的用戶名
密碼 密碼位
UID 用戶標識號
GID 缺省組標識號
注釋性描述 例如存放用戶全名等信息
宿主目錄 用戶登錄系統后的缺省目錄(家目錄)
命令解釋器 用戶使用的Shell,默認為bash
wc
功能說明:統計行
舉 例:統計/etc/passwd文件有多少行:wc -l /etc/passwd
head
功能說明:查看文件的前面N行。
舉 例:查看passwd的前2行:head -2 passwd
tail
功能說明:查看文件的后面N行
舉 例:查看passwd的后2行:tail -2 passwd
cut
功能說明:提取列
舉 例:截取出/etc/passwd的第一列和第三列: cut -d ':' -f 1,3,6 /etc/passwd
截取/etc/passwd文件從第二個字符到第九個字符: cut -c 2-9 /etc/passwd
awk
功能說明:提取列
舉 例:截取出/etc/passwd的包含ztzh的第一列和第三列: cat /etc/passwd |grep ztzh| awk -F ':' '{print $1,$3}'
sed
功能說明:對數據進行處理(選取,新增,替換,刪除,搜索)
舉 例:列出包含ztzh的行: sed -n '/ztzh/p' /etc/passwd
nl
功能說明:l添加行號顯示出內容
舉 例:nl passwd | sed '10q'
ln
功能說明:為某一個文件在另外一個位置建立一個同步的鏈接
舉 例:ln -s ~/test.txt ~/myfile/testlink,將用戶目錄下的test.txt在myfile文件夾下建立一個軟鏈接,如果原文件丟失則軟鏈接也失效
date
功能說明:查詢主機當前時間
舉 例:查詢主機當前時間:date
date +"%Y-%m-%d %H:%M:%S 星期%w":2019-04-06 08:57:53 星期6
id
功能說明:查看用戶
舉 例:查看當前用戶:id
ps
功能說明:查詢進程情況
舉 例:查詢java進程:ps -ef | grep java
kill
功能說明:殺進程
舉 例:殺掉所有java進程:ps -ef | grep java | awk ‘{print $2}’ | xargs kill -9
top
功能說明:查看系統的CPU、內存、運行時間、交換分區、執行的線程等信息
舉 例:top
free
功能說明:查看內存使用情況。
舉 例:free -m
iostat
功能說明:輸出CPU和磁盤I/O相關的統計信息
舉 例:iostat –x –k 1 2
df
功能說明:查看磁盤空間使用情況。
舉 例:查看主機的空間使用情況 :df -h
echo
功能說明:標准輸出命令。
舉 例:對變量test進行輸出:echo $test
netstat
功能說明:顯示各種網絡相關信息
舉 例: netstat -an |grep tcp| grep ESTABLISHED | wc -l
vi
功能說明:編輯器
命令行模式:dd
插入模式:i
底行模式:/,set nu,wq
type
功能說明:type可以知道某個指令是來自於外部指令(指的是其他非 bash 所提供的指令)或是內建在bash當中的指令
舉 例: type cd,可以找到cd是shell內建指令
alias
功能說明:命令別名設定
舉 例:alias la='ls -al’,這個指令名稱為 la ,其實執行的是ls -al
unalias
功能說明:取消命令別名
舉 例:將剛剛的la命令別名拿掉,就使用unalias la
traceroute
功能說明:traceroute可以知道信息從計算機到互聯網另一端的主機是走的什么路徑
舉 例:traceroute www.baidu.com就可以顯示出網路數據包的路徑
ss
功能說明:ss命令可以用來獲取socket統計信息,它可以顯示和netstat類似的內容。但ss比netstat更快速更高效
舉 例:ss -l 命令可以列出所有打開的網絡連接端口
tar
功能說明:tar命令可以實現壓縮,解壓縮,打包,解包等功能,比gzip更加實用
舉 例:tar -zcvf 1.tar.gz 1.txt 2.txt 3.txt,命令可以將1.txt,2.txt,3.txt 打包並壓縮成1.tar.gz。tar zxvf 1.tar.gz,可以解壓。