學(xué)習(xí)軟件測試,最基本的linux命令必須掌握,現(xiàn)為大家整理如下:
我們提供的服務(wù)有:網(wǎng)站建設(shè)、成都做網(wǎng)站、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、新平ssl等。為近1000家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的新平網(wǎng)站制作公司
一:系統(tǒng)管理相關(guān)命令
ls:可以看到整個目錄
1.su:在不退出登陸的情況下,切換到另一個用戶的身份
如:su root
切換到root這個用戶,將提示輸入密碼,輸完密碼后即可登陸
# 超級用戶提示符
$ 普通用戶提示符
whoami:確認(rèn)自己身份
history:查看運行命令的 歷史
ifconfig:顯示或設(shè)置網(wǎng)絡(luò)設(shè)備的命令,我們可以用這個命令查看自己虛擬機的IP地址
ping:ping是Windows.Unix,Linux系統(tǒng)下的一個命令.ping命令也屬于一個通信協(xié)議,是TCP/I協(xié)議的一部分。利用“ping"命令可以檢查網(wǎng)絡(luò)是否聯(lián)通
停下來是:Ctrl+C(4)
kill:殺死進程(kill-9 進程號 強制殺死進程)
目錄操作命令
linux的文件系統(tǒng)是采用層級式的樹狀目錄結(jié)構(gòu),在此結(jié)構(gòu)中的最上層是根目錄”/“,下層是各種各樣的子目錄和文件。
/:unix 文件系統(tǒng)的上層根目錄
root:存放root用戶的相關(guān)文件
home:存放普通用戶的相關(guān)文件
bin:存放常用命令的目錄,如vi,su,普通用戶就可以提取的命令
sbin:要具有”一定權(quán)限才可以使用命令“
etc:存放配置的相關(guān)文件
vir:存放經(jīng)常變化的文件。如:網(wǎng)絡(luò)連接的sock文件
boot:啟動目錄,存放引導(dǎo)系統(tǒng)啟動的相關(guān)文件
usr:安裝一個軟件的默認(rèn)目錄,相當(dāng)于Windows下的program files
dev:設(shè)備文件保存目錄
lb :系統(tǒng)庫保存文件
pwd命令:顯示當(dāng)前路徑
cd命令:切換目錄
用法:cd目錄路徑
cd./切換到上級目錄
cd/切換到根目錄
cd~(或只有cd) 切換到用戶主目錄(home底下以用戶名命名的文件夾)
/root目錄
cd /opt ---cd bin 與cd /opt---cd /bin的區(qū)別
mkdir創(chuàng)建目錄
mkdir 目錄名
rmdir刪除空目錄
用法:rmdir 目錄名
也可用:rm-rf 目錄名
touch a.txt創(chuàng)建一個a.txt文件
二:文件操作命令
在Linux系統(tǒng)中,幾乎所有內(nèi)容包括文檔,命令,設(shè)備和目錄等都組織成文件的形式,用文件來管理,常用文件命令有:
|| 查看文件目錄,以及它們對應(yīng)的屬性信息
cp 復(fù)制命令
用法:cp[選項] 文件名或目錄 目標(biāo)地址
-R 拷貝目錄及目錄下所有目錄和文件
cp a.txt b.txt 將a文件復(fù)制,且另命名為b文件(目錄名)
mv 移動命令
用法:mv文件名或目錄 目標(biāo)位置
mv a.txt../ 將a文件移動到上級目錄(將一個文件移動到另一個目錄沒有重命名)
mv a.txt ../b.txt 將a文件移動到上一級并改名為b文件(將一個文件移動到另一個目錄并重命名)
移動目錄的時候,如果出現(xiàn)覆蓋的情況,且被覆蓋的目錄非空,需要加一個'-b'的參數(shù)才能移動成功。被覆蓋的目錄此時會生產(chǎn)一個備份。
rm 刪除文件或目錄(i:操作時進行詢問)
-f 強制刪除
-r 刪除目錄
常用:rm -f文件或目錄
find命令 查找文件
用法:find[路徑][選項]
常用選項有:
find . -name a.txt 在當(dāng)前目錄查找文件a.txt
find / -name a.txt 從當(dāng)前目錄查找a.txt文件
grep命令
功能:在指定文件中查找字符(串)并打印該行;過濾,經(jīng)常跟管道符號一起出現(xiàn)
用法:grep 字符串 文件名
grep xyz file 在file文件中尋找band字符串所在的那一行
文件編輯命令
vi:是linux下常用的文本編輯器
調(diào)用方法:vi a.txt(如果a.txt不存在,則創(chuàng)建,保存退出則創(chuàng)建成功)
按鍵盤i進入編輯狀態(tài)(注意:都是英文輸入法下進行輸入)
退出編輯按ESC鍵,退出方法
不保存退出: :q!
保存退出: :wq
輸入/,進入搜索,輸入你需要搜索的文字,按Enter
按鍵盤G,可以直接定位到最末行
按鍵盤g,可以直接定位到首
cat命令:顯示文本文件內(nèi)容
用法: cat文件名 cat 文件名字
head:查看前幾行 用法:head -n 5 文件名
tail:從指定點開始將文件寫到標(biāo)準(zhǔn)輸出,使用tail命令的-f選項可以方便的查閱正在改變的日志文件
tail -n 5文件名 查看后幾行
tail -f error.log 不斷刷新,看到最新內(nèi)容
系統(tǒng)資源查詢命令
ps 查看進程(動態(tài))
-ef 顯示所有運行進程,并顯示啟動進程的命令
Uid:用戶ID,PID;進程id PPID:父進程,C:進程cpu占用率,Stime:進程從啟動到現(xiàn)在所運行的時間
TTY:終端號。CMD:命令名稱和參數(shù)
netstat 查看網(wǎng)絡(luò)狀況
netstat -apn 查看所有端口
管道命令
管道使用”|“符號,并且在命令之間建立管道,將前面命令的輸出作為后面命令的輸入
如:ls|greap abc:管卡道前面的命令顯示當(dāng)前目錄下的文件,后面從列出的文件名中尋找含有abc字符串的文件或者目錄
正常情況下,殺死服務(wù)進程(比如殺死tomcat進程)
通過進程名找到進程,在殺死進程
通過命令查找tomcat進程:ps -ef|grep tomcat(ps -ef是查找所有運行的進程,通過管道符找到所有進程中包含了”tomcat"字符串的進程,即為tomcat進程),假如5541
殺掉此進程,kill -9進程id(kill -9 5541)
通過端口來找到進程,再殺死進程
通過命令查找到占用此端口的進程編號:netstat -apn|grep 8080 根據(jù)8080查進程,假如 5541
殺掉進程:kill -9 pid(kill -9 5541)
三:權(quán)限賦予命令:chmod
linux系統(tǒng)是一種典型的多用戶系統(tǒng),不同的用戶處于不同的地位,擁有不同的權(quán)限。為了保護系統(tǒng)的安全性,linux系統(tǒng)對不同的用戶訪問同一文件(包括目錄文件)的權(quán)限做了不同的規(guī)定。在linux中可以使用||或ls -|命令來顯示一個文件的屬性以及文件所屬的用戶和組。
chmod語法:chmod[-R] xyz文件或目錄
讀(r): 4 寫(w): 2 執(zhí)行(x): 1
chmod 532 test.txt
壓縮,解壓命令
例如:將test文件壓縮成test.tar.gz
安裝軟件命令
yum 自動下載安裝(前提:能訪問外網(wǎng))
yum[操作][package]
例如:yum install mysql-server(安裝mysql服務(wù)器)
rpm 安裝
rpm -ivh 軟件包名(ivh 安裝顯示安裝進度)
虛擬機控制
語言調(diào)整
Applications —_system tools—-settings —_Region language —language
打開命令行— reboot
1.行提示符
2.切換用戶
[kiosk@foundation0 Desktop]$ su - username?
*)高級用戶切換到低級用戶不需要密碼,低級用戶切換到高級或者平級用戶的切換需要密碼
3.虛擬控制臺
Red hat Enterprise Linux Server 7.0 (Maipo) ##系統(tǒng)版本?
Kernel 3.10.0-123.el7.x86_64 on an x86_64 ##內(nèi)核版本,系統(tǒng)位數(shù)
desktop0 login:root ##登陸用戶名稱輸入?
Password: ##密碼輸入無回顯
4.命令的執(zhí)行
1.命令必須在行提示符之后輸入?
2.命令格式?
命令 參數(shù) 目標(biāo)?
3.ctrl +c ##撤銷命名的執(zhí)行?
4.命令參數(shù)?
-參數(shù) ##單詞縮寫?
_參數(shù) ##單詞的全拼
5.命令的幫助
6.系統(tǒng)的使用基礎(chǔ)方法
1)系統(tǒng)登陸?
圖形登陸方式?
文本登陸方式?
gnome-session-quit _force ###注銷用戶 _force強制注銷,不詢問
2)工作界面轉(zhuǎn)換?
ctrl+alt+上|下
3)開始bash?
1.ApplicationsUtilitiesTerminal?
2.鼠標(biāo)右鍵—_open in terminal?
3.gnome-terminal?
4.ctrl+shift+n ##在新窗口中打開shell?
ctrl+shift+t ##同一個窗口中打開新的tab?
5.退出:exit | ctrl+d
4)系統(tǒng)關(guān)機,重啟?
重啟?
reboot | init 6 |shutdown -r now?
關(guān)機?
poweroff | init 0 | shutdown -h now
5)鎖屏?
ctrl + alt +L ##在rhel7.0?
win鍵 + L ##在rhel7.2
1)簡單的系統(tǒng)命令
2)
3)
file 文件名字 ? ##查看文件類型
4)文件的查看
5)wc統(tǒng)計文件容量信息
tab鍵
在系統(tǒng)中table鍵可以自動補齊存在的命令,文件名稱和某些命令的參數(shù)
a+TAB x2 顯示系統(tǒng)中所有a開有的命令
history歷史調(diào)用
linux中的快捷鍵
ps 命令的作用是顯示進程信息的;
| 符號,是個管道符號,表示ps 和 grep 命令同時執(zhí)行;
grep 命令是查找(Global Regular Expression Print),能使用正則表達式搜索文本,然后把匹配的行顯示出來;
ps命令有一些參數(shù):
-e : 顯示所有進程
-f : 全格式
-h : 不顯示標(biāo)題
-l : 長格式
-w : 寬輸出
a :顯示終端上的所有進程,包括其他用戶的進程。
r :只顯示正在運行的進程。
u :以用戶為主的格式來顯示程序狀況。
x :顯示所有程序,不以終端機來區(qū)分。
結(jié)果信息從前到后依次是:
UID PID PPID C STIME TTY TIME CMD
zzw 14124 13991 0 00:38 pts/0 00:00:00 grep –color=auto dae
Linux中的top命令顯示系統(tǒng)上正在運行的進程。它是系統(tǒng)管理員最重要的工具之一。被廣泛用于監(jiān)視服務(wù)器的負(fù)載。top命令是一個交互命令。在運行top的時候還可以運行很多命令。
N – 以 PID 的大小的順序排列表示進程列表
P – 以 CPU 占用率大小的順序排列進程列表
M – 以內(nèi)存占用率大小的順序排列進程列表
q – 退出 top
h – 幫助
1 系統(tǒng)運行時間和平均負(fù)載
這些字段顯示:當(dāng)前時間、系統(tǒng)已運行的時間、當(dāng)前登錄用戶的數(shù)量、相應(yīng)最近5、10和15分鐘內(nèi)的平均負(fù)載。
2 任務(wù)
第二行顯示的是任務(wù)或者進程的總結(jié)。進程可以處于不同的狀態(tài)。這里顯示了全部進程的數(shù)量。除此之外,還有正在運行、睡眠、停止、僵尸進程的數(shù)量(僵尸是一種進程的狀態(tài))。這些進程概括信息可以用’t’切換顯示。
3 CPU 狀態(tài)
下一行顯示的是CPU狀態(tài)。 這里顯示了不同模式下的所占CPU時間的百分比。這些不同的CPU時間表示:
us, user: 運行(未調(diào)整優(yōu)先級的) 用戶進程的CPU時間
sy,system: 運行內(nèi)核進程的CPU時間
ni,niced:運行已調(diào)整優(yōu)先級的用戶進程的CPU時間
wa,IO wait: 用于等待IO完成的CPU時間
hi:處理硬件中斷的CPU時間
si: 處理軟件中斷的CPU時間
st:這個虛擬機被hypervisor偷去的CPU時間(譯注:如果當(dāng)前處于一個hypervisor下的vm,實際上hypervisor也是要消耗一部分CPU處理時間的)。
4 內(nèi)存使用
接下來兩行顯示內(nèi)存使用率,有點像’free’命令。第一行是物理內(nèi)存使用,第二行是虛擬內(nèi)存使用(交換空間)。
物理內(nèi)存顯示如下:全部可用內(nèi)存、已使用內(nèi)存、空閑內(nèi)存、緩沖內(nèi)存。相似地:交換部分顯示的是:全部、已使用、空閑和緩沖交換空間。
5 各列的意思
PID 進程ID,進程的唯一標(biāo)識符
USER 進程所有者的實際用戶名。
PR 進程的調(diào)度優(yōu)先級。這個字段的一些值是’rt’。這意味這這些進程運行在實時態(tài)。
NI 進程的nice值(優(yōu)先級)。越小的值意味著越高的優(yōu)先級。
VIRT 進程使用的虛擬內(nèi)存。
RES 駐留內(nèi)存大小。駐留內(nèi)存是任務(wù)使用的非交換物理內(nèi)存大小。
SHR SHR是進程使用的共享內(nèi)存。
S 這個是進程的狀態(tài)。它有以下不同的值:
D – 不可中斷的睡眠態(tài)。
R – 運行態(tài)
S – 睡眠態(tài)
T – 被跟蹤或已停止
Z – 僵尸態(tài)
%CPU 自從上一次更新時到現(xiàn)在任務(wù)所使用的CPU時間百分比。
%MEM 進程使用的可用物理內(nèi)存百分比。
TIME+ 任務(wù)啟動后到現(xiàn)在所使用的全部CPU時間,精確到百分之一秒。
COMMAND 運行進程所使用的命令。
注意 :不同發(fā)行版的top命令在各種細(xì)節(jié)有不同,如果發(fā)現(xiàn)不同時,請讀你的幫助手冊和命令內(nèi)的幫助。)
kill、kill-15、kill-9區(qū)別:
執(zhí)行kill(默認(rèn)kill -15)命令,系統(tǒng)會發(fā)送一個SIGTERM信號給對應(yīng)的程序,大部分程序接收到SIGTERM信號后,會先釋放自己的資源,然后再停止。用法kill pid。
kill -15 pid。
kill -9命令,系統(tǒng)給對應(yīng)程序發(fā)送的信號是SIGKILL,即exit。exit信號不會被系統(tǒng)阻塞,所以kill -9能順利殺掉進程。用法kill -9 pid。
tail -n 1000:顯示最后1000行
tail -n +1000:從1000行開始顯示,顯示1000行以后的
head -n 1000:顯示前面1000行
cat a.txt 顯示文件
vim xx.conf 編輯文件
打開文件后,按insert鍵進入編輯模式;編輯完后,按esc建退出編輯模式;按shift+冒號后,輸入wq保存退出,wq!保存強制退出,q不保存退出
在根目錄模糊查找名字含java的文件
服務(wù)器端常有很多壓縮過的日志文件,當(dāng)需要查找日志中某些特定信息的時候,為了避免解壓文件,可以使用zgrep,zcat等命令查找、查看壓縮文件中的信息
zgrep ' 輸入你要查找的東東' /目錄 /文件 .gz 或者.log (當(dāng)日)
grep ' 輸入你要查找的東東' /目錄 /文件 .gz 或者.log (非當(dāng)日的壓縮文件)
例如: zgrep 'callMktCamLoad' app.log.2019-12-03-*.gz
rpm包安裝的,可以用 rpm -qa 看到,如果要查找某軟件包是否安裝,用 rpm -qa | grep "軟件或者包的名字"
以deb包安裝的,可以用 dpkg -l 看到。如果是查找指定軟件包,用 dpkg -l | grep "軟件或者包的名字"
yum方法安裝的,可以用 yum list installed 查找,如果是查找指定包,用 yum list installed | grep "軟件名或者包名"
命令行轉(zhuǎn)桌面? ? ? ? startx??? ;??
桌面轉(zhuǎn)命令行? ? ? ? ?用桌面的終端輸入命令reboot? ? 或者在控制中心里面直接關(guān)掉系統(tǒng), 重啟系統(tǒng)的時候? ? ? ? ?/ 就是命令行的形式打開的
虛擬機的優(yōu)勢參考網(wǎng)址:
二、 從用戶切換到root權(quán)限
su
輸入密碼
就變成這樣就說明成功了。[root@centos-linux mac]#
2. 從root權(quán)限切換到用戶權(quán)限
exit
輸入上面的詞就回到用戶權(quán)限了,? 就變成 [mac@centos-linux ~]$
包管理一般 centos 是yum,ubuntu是apt-get
選擇yum包管理器?,如果使用yum的文章:
/***********************************************************************************************************/
1.可以查詢yum管理工具的 所有 配置文件 命令: rpm -qc yum
1.結(jié)果:
/etc/logrotate.d/yum
/etc/yum.conf
/etc/yum/version-groups.conf
********************************************************************************************************************
2.查詢yum的配置文件 命令:? ? ls /etc | grep -E yum
2.結(jié)果:
yum
yum.conf
yum.repos.d
********************************************************************************************************************
3.列出各軟件倉庫的配置文件 命令: ls /etc/yum.repos.d/
3.結(jié)果:CentOS-Base.repo CentOS-Debuginfo.repo CentOS-Sources.repo CentOS-Vault.repo
********************************************************************************************************************
根據(jù)上面的做法 從用戶切換到root權(quán)限,之后做下面的
查看各變量的含義及解釋命令: man yum.conf
結(jié)果:出來一個文件內(nèi)容,按q就可以退出來。
文章的內(nèi)容? [main] OPTIONS之后的內(nèi)容就是變量的含義及解釋
4. 示例:自行配置一個yum軟件倉庫?
Note : URL必須指向元數(shù)據(jù)文件所在的目錄(repodata存在的目錄)
/***********************************************************************************************************/
cd /etc/yum.repos.d
ls
結(jié)果:CentOS-Base.repo? CentOS-CR.repo? CentOS-Debuginfo.repo? CentOS-fasttrack.repo? CentOS-Media.repo? CentOS-Sources.repo? CentOS-Vault.repo
vi CenterOS-cloud.repo
以下是編輯CentOS-cloud.repo文件
[cloud]
name=cnetos7 cloud x86_64 openstack-ocata
baseurl=
gbgcheck=0
enable=1
#顯示本地可用的yum倉庫
yum repolist
得到以下結(jié)果,里面已經(jīng)有自己創(chuàng)建的yum軟件倉庫cloud
Loaded plugins: fastestmirror, langpacks
base? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? | 3.6 kB? 00:00:00? ?
cloud? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? | 2.9 kB? 00:00:00? ?
extras? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? | 3.4 kB? 00:00:00? ?
updates? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? | 3.4 kB? 00:00:00? ?
cloud/primary_db? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? | 865 kB? 00:00:00? ?
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
repo id? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? repo name? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? status
base/7/x86_64? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? CentOS-7 - Base? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 10,019
cloud? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? centos7 cloud X86_64 openstack-ocata? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 2,005
extras/7/x86_64? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? CentOS-7 - Extras? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 321
updates/7/x86_64? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? CentOS-7 - Updates? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 624
repolist: 12,969
/***********************************************************************************************************/
安裝系統(tǒng)的配置這里記錄一下
linux系統(tǒng)下用命令安裝虛擬機 1.打開你的終端(在屏幕的空白處右擊); 2.輸入命令:sudo apt-get install virtualbox; 3.在你的application(應(yīng)用)->system(系統(tǒng))就可以看到你新安裝的虛擬機了; 4.也可以直接在終端輸入命令:virtualbox就可以打開了.我這里安裝的是virtualbox.另外有人說可以裝vmware.其實兩個都可以,只是個人覺得如果是新手的話還是裝virtualbox比較好,因為安裝比較簡單...最重要的是virtualbox是開源軟件,vmware是閉源的,支持開源.