童話里說,每逢雨后都會有一道彩虹。哈嘍,大家好,在我們的日常測試工作中,難免會接觸或使用到Linux操作系統,下面我整理了一些測試工作中的Linux中常用到的命令,希望能給大家帶來一定的幫助。
童話里說,每逢雨后都會有一道彩虹。哈嘍,大家好,在我們的日常測試工作中,難免會接觸或使用到Linux操作系統,下面我整理了一些測試工作中的Linux中常用到的命令,希望能給大家帶來一定的幫助。
一、目錄操作命令
目錄切換:cd
命令:cd 目錄
cd / 切換到根目錄
cd /usr 切換到根目錄下的usr目錄
cd ../ 切換到上一級目錄 或者 cd ..
cd ~ 切換到home目錄
cd - 切換到上次訪問的目錄
目錄查看:ls
命令:ls [-al]
ls 查看當前目錄下的所有目錄和文件
ls -a 查看當前目錄下的所有目錄和文件(包括隱藏的文件)
ls -l 或 ll 列表查看當前目錄下的所有目錄和文件(列表查看,顯示更多信息)
ls /dir 查看指定目錄下的所有目錄和文件 如:ls /usr
創建目錄:mkdir
命令:mkdir 目錄
mkdir aaa 在當前目錄下創建一個名為aaa的目錄
mkdir /usr/aaa 在指定目錄下創建一個名為aaa的目錄
刪除目錄或文件:rm
命令:rm [-rf] 目錄
刪除文件:
rm 文件 刪除當前目錄下的文件
rm -f 文件 刪除當前目錄的的文件(不詢問)
刪除目錄:
rm -r aaa 遞歸刪除當前目錄下的aaa目錄
rm -rf aaa 遞歸刪除當前目錄下的aaa目錄(不詢問)
全部刪除:
rm -rf * 將當前目錄下的所有目錄和文件全部刪除
目錄修改:mv、cp
1、重命名目錄
命令:mv 當前目錄 新目錄
mv aaa bbb 將目錄aaa改為bbb
注意:mv的語法不僅可以對目錄進行重命名而且也可以對各種文件,壓縮包等進行 重命名的操作
2、剪切目錄
命令:mv 目錄名稱 目錄的新位置
mv /usr/tmp/aaa /usr 將/usr/tmp目錄下的aaa目錄剪切到 /usr目錄下面
注意:mv語法不僅可以對目錄進行剪切操作,對文件和壓縮包等都可執行剪切操作
3、拷貝目錄
命令:cp -r 目錄名稱 目錄拷貝的目標位置 -r代表遞歸
cp -r /usr/tmp/aaa /usr 將/usr/tmp目錄下的aaa目錄復制到 /usr目錄下面
注意:cp命令不僅可以拷貝目錄還可以拷貝文件,壓縮包等,拷貝文件和壓縮包時不 用寫-r遞歸
搜索目錄:find
命令:find 目錄 參數 文件名稱
find /usr/tmp -name 'a*' 查找/usr/tmp目錄下的所有以a開頭的目錄或文件
find /usr/tmp -name 'a*' -type f 查找/usr/tmp目錄下的所有以a開頭的文件
find /usr/tmp -name 'a*' -type d 查找/usr/tmp目錄下的所有以a開頭的目錄
二、文件操作命令
新建文件:touch
命令:touch 文件名
touch aa.txt 在當前目錄創建一個名為aa.txt的文件
刪除文件:rm
命令:rm -rf 文件名
rm -rf aa.txt 強制刪除當前目錄下的aa.txt文件
修改文件:vi或vim
vi編輯器的3種模式:
基本上vi可以分為三種狀態,分別是命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode),各模式的功能區分如下:
命令行模式command mode)
控制屏幕光標的移動,字符、字或行的刪除,查找,移動復制某區段及進入Insert mode下,或者到 last line mode。
命令行模式下的常用命令:
【1】控制光標移動:↑,↓,j
【2】刪除當前行:dd
【3】查找:/字符
【4】進入編輯模式:i o a
【5】進入底行模式::
編輯模式(Insert mode)
只有在Insert mode下,才可以做文字輸入,按「ESC」鍵可回到命令行模式。
編輯模式下常用命令:
【1】ESC 退出編輯模式到命令行模式;
底行模式(last line mode)
將文件保存或退出vi,也可以設置編輯環境,如尋找字符串、列出行號……等。
底行模式下常用命令:
【1】退出編輯: :q
【2】強制退出: :q!
【3】保存并退出: :wq
打開文件
命令:vi 文件名
vi aa.txt 或者 vim aa.txt 打開當前目錄下的aa.txt文件
注意:使用vi編輯器打開文件后,并不能編輯,因為此時處于命令模式,點擊鍵盤i/a/o進入編輯模式。
編輯文件
使用vi編輯器打開文件后點擊按鍵:i ,a或者o即可進入編輯模式。
i:在光標所在字符前開始插入
a:在光標所在字符后開始插入
o:在光標所在行的下面另起一新行插入
保存或者取消編輯
保存文件:
第一步:"ESC"進入命令行模式
第二步:":"進入底行模式
第三步:"wq"保存并退出編輯
取消編輯:
第一步:"ESC"進入命令行模式
第二步:":"進入底行模式
第三步:"q!"撤銷本次修改并退出編輯
文件的查看
文件的查看命令:cat、more、less、tail
cat:看最后一屏
示例:使用cat查看/etc/sudo.conf文件,只能顯示最后一屏內容
cat sudo.conf
more:百分比顯示
示例:使用more查看/etc/sudo.conf文件,可以顯示百分比,回車可以向下一行,空格可以向下一頁,q可以退出查看
more sudo.conf
less:翻頁查看
示例:使用less查看/etc/sudo.conf文件,可以使用鍵盤上的PgUp和PgDn向上 和向下翻頁,q結束查看
less sudo.conf
tail:指定行數或者動態查看
示例:使用tail -10 查看/etc/sudo.conf文件的后10行,Ctrl+C結束
tail -10 sudo.conf
權限修改
rwx:r代表可讀用數字4表示,w代表可寫用數字2表示,x代表該文件是一個可執行文件用數字1表示,如果rwx任意位置變為-則代表不可讀或不可寫或不可執行文件。
示例:給aaa.txt文件權限改為可執行文件權限,aaa.txt文件的權限是-rw-------
第一位:-就代表是文件,d代表是文件夾
第一段(3位):代表擁有者的權限
第二段(3位):代表擁有者所在的組,組員的權限
第三段(最后3位):代表的是其他用戶的權限
421 421 421
- rw- --- ---
修改文件或者目錄權限使用chmod命令:
u:用戶
g:組
o:其它用戶
a:所有用戶(默認)
+:增加權限
-:刪除權限
=:重新分配權限
r:讀
w:寫
x:執行
chmod u+x file 給file的屬主增加執行權限
chmod 751 file 給file的屬主分配讀、寫、執行(7)的權限,給file的所在組分配讀、執行(5)的權限,給其他用戶分配執行(1)的權限
chmod u=rwx,g=rx,o=x file 上例的另一種形式
chmod =r file 為所有用戶分配讀權限
chmod 444 file 為所有用戶分配讀權限
chmod a-wx,a+r file 為所有用戶分配讀權限
chmod -R u+r directory 遞歸地給directory目錄下所有文件和子目錄的屬主分配讀的權限
chmod 4755 設置用ID,給屬主分配讀、寫和執行權限,給組和其他用戶分配讀、執行的權限。
三、打包和壓縮
Windows的壓縮文件的擴展名 .zip、.rar
linux中的打包文件:aa.tar
linux中的壓縮文件:bb.gz
linux中打包并壓縮的文件:.tar.gz
Linux中的打包文件一般是以.tar結尾的,壓縮的命令一般是以.gz結尾的。
而一般情況下打包和壓縮是一起進行的,打包并壓縮后的文件的后綴名一般.tar.gz。
命令:tar -zcvf 打包壓縮后的文件名 要打包的文件
其中:
z:調用gzip壓縮命令進行壓縮
c:打包文件
v:顯示運行過程
f:指定文件名
示例:打包并壓縮/usr/tmp 下的所有文件 壓縮后的壓縮包指定名稱為xxx.tar
tar -zcvf ab.tar aa.txt bb.txt
或:
tar -zcvf ab.tar *
解壓
命令:tar [-zxvf] 壓縮文件
其中:x:代表解壓
示例:將ab.tar解壓到當前目錄下
tar -zxvf ab.tar
將ab.tar解壓到根目錄/usr下
tar -xvf ab.tar -C /usr -C代表指定解壓的位置
四、查找
grep
grep命令是一種強大的文本搜索工具
使用實例:
ps -ef | grep sshd 查找指定ssh服務進程
ps -ef | grep sshd | grep -v grep 查找指定服務進程,排除gerp身
ps -ef | grep sshd -c 查找指定進程個數
find
find命令在目錄結構中搜索文件,并對搜索結果執行指定的操作。
find 默認搜索當前目錄及其子目錄,并且不過濾任何結果(也就是返回所有文件),將它們全都顯示在屏幕上。
使用實例:
find . -name "*.log" -ls 在當前目錄查找以.log結尾的文件,并顯示詳細信息。
find /root/ -perm 600 查找/root/目錄下權限為600的文件
find . -type f -name "*.log" 查找當目錄,以.log結尾的普通文件
find . -type d | sort 查找當前所有目錄并排序
find . -size +100M 查找當前目錄大于100M的文件
whereis
whereis命令是定位可執行文件、源代碼文件、幫助文件在文件系統中的位置。這些文件的屬性應屬于原始代碼,二進制文件,或是幫助文件。
使用實例:
whereis ls 將和ls文件相關的文件都查找出來
which
which命令的作用是在PATH變量指定的路徑中,搜索某個系統命令的位置,并且返回第一個搜索結果。
使用實例:
which pwd 查找pwd命令所在路徑
which java 查找path中java的路徑
五、su、sudo
su
su用于用戶之間的切換。但是切換前的用戶依然保持登錄狀態。如果是root 向普通或虛擬用戶切換不需要密碼,反之普通用戶切換到其它任何用戶都需要密碼驗證。
su test 切換到test用戶,但是路徑還是/root目錄
su - test 切換到test用戶,路徑變成了/home/test
su 切換到root用戶,但是路徑還是原來的路徑
su - 切換到root用戶,并且路徑是/root
su不足:如果某個用戶需要使用root權限、則必須要把root密碼告訴此用戶。
退出返回之前的用戶:exit
sudo
sudo是為所有想使用root權限的普通用戶設計的??梢宰屍胀ㄓ脩艟哂信R時使用root權限的權利。只需輸入自己賬戶的密碼即可。
進入sudo配置文件命令:
vi /etc/sudoer 或 visudo
案例:
允許hadoop用戶以root身份執行各種應用命令,需要輸入hadoop用戶的密碼。
hadoop ALL=(ALL) ALL
案例:
只允許hadoop用戶以root身份執行ls 、cat命令,并且執行時候免輸入密碼。
配置文件中:
hadoop ALL=NOPASSWD: /bin/ls, /bin/cat
用法示例:
sudo vim aaa.txt
六、軟件管理
RPM安裝
用法: rpm [選項…]
-a:查詢所有套件;
-b<完成階段><套件檔>+或-t <完成階段><套件檔>+:設置包裝套件的完成階段,并指定套件檔的文件名稱;
-c:只列出組態配置文件,本參數需配合"-l"參數使用;
-d:只列出文本文件,本參數需配合"-l"參數使用;
-e<套件檔>或--erase<套件檔>:刪除指定的套件;
-f<文件>+:查詢擁有指定文件的套件;
-h或--hash:套件安裝時列出標記;
-i:顯示套件的相關信息;
-i<套件檔>或--install<套件檔>:安裝指定的套件檔;
-l:顯示套件的文件列表;
-p<套件檔>+:查詢指定的RPM套件檔;
-q:使用詢問模式,當遇到任何問題時,rpm指令會先詢問用戶;
-R:顯示套件的關聯性信息;
-s:顯示文件狀態,本參數需配合"-l"參數使用;
-U<套件檔>或--upgrade<套件檔>:升級指定的套件檔;
-v:顯示指令執行過程;
-vv:詳細顯示指令執行過程,便于排錯。
安裝軟件:
rpm -ivh xxx.rpm # 直接安裝
rpm --force -ivh xxx.rpm # 忽略報錯,強制安裝
卸載軟件:
rpm -e tree # 卸載軟件
列出所有安裝的軟件包:
rpm -qa
獲取某個軟件包的文件全名:
rpm -q tree
獲取rpm包中的文件安裝的位置:
rpm -ql tree
Yum安裝
yum(全稱為 Yellow dog Updater, Modified)是一個在Fedora和RedHat以及SUSE中的Shell前端軟件包管理器?;禦PM包管理,能夠從指定的服務器自動下載RPM包并且安裝,可以自動處理依賴性關系,并且一次安裝所有依賴的軟體包,無須繁瑣地一次次下載、安裝。yum提供了查找、安裝、刪除某一個、一組甚至全部軟件包的命令
yum的命令形式一般是如下:yum [options] [command] [package …]
其中的[options]是可選的,選項包括-h(幫助),-y(當安裝過程提示選擇全部為"yes"),-q(不顯示安裝的過程)等等。[command]為所要進行的操作,[package …]是操作的對象。
安裝yum包:
yum install PACKAGE_NAME
刪除yum包:
yum remove PACKAGE_NAME
重新安裝一個yum包:
yum reinstall PACKAGE_NAME
搜索yum包:
yum search PACKAGE_NAME
顯示yum包的信息:
yum info PACKAGE_NAME
清除yum緩存:
yum clean all
更新安裝的yum包:
yum update
更新具體的yum包:
yum update PACKAGE_NAME
顯示yum歷史:
yum history
顯示已啟用的yum存儲庫的列表:
yum repolist
Yum軟件倉庫的配置
進入到Yum倉庫軟件倉庫的配置文件目錄: /etc/yum.repos.d
cd /etc/yum.repos.d
使用Vim編輯器創建一個名為rhel.repo的配置文件(文件名可隨意,但必須為.repo結尾)
vim rhel.repo
按a/i/o進入輸入模式,輸入內容如下:
[rhel]
name=rhel
baseurl=http://www.****.com/***** or file:///media/cdrom
enabled=1
gpgcheck=0
按esc退出至命令模式,輸入:wq,保存并退出。
name=rhel:Yum倉庫名稱描述
baseurl=file:///media/cdrom:提供的方式FTP、HTTP、本地
enabled=1:設置此源是否可用;1可用,0禁用
gpgcheck=1:設置此源是否校檢文件;1為,0不為
使用"yum install httpd"檢查Yum倉庫是否已經可用,輸入命令,使用Yum軟件倉庫來安裝Web服務
yum install httpd
出現 Complete! 配置正確
源碼安裝
下載并解壓文件
如果下的壓縮文件的后綴是
tar.gz 解壓用 tar -xzvf xxx.tar.gz
tar.b2 解壓用 tar -xjvf xxx.tar.b2
tar 解壓用 tar -xvf xxx.tar
配置安裝路徑
在/usr/local/下創建放置將要安裝的軟件目錄
mkdir /usr/local/newApp
cd 到源代碼所在的文件夾,配置安裝路徑
/usr/local/newApp
./configure --prefix=/usr/local/newApp
(./configure --prefix=/usr/local/指定安裝根目錄 .–with指的是安裝本文件所依賴的庫文件。/configure是源代碼安裝的第一步,主要的作用是對即將安裝的軟件進行配置,檢查當前的環境是否滿足要安裝軟件的依賴關系,生成makefile文件)
編譯源代碼
make
如果是多核cpu可以用 make -j來加快編譯速度
make -j
安裝
make install
這個過程可能需要root權限
刪除源代碼以節省磁盤空間
rm -rf xxx.tar.gz
編譯源代碼和安裝可以組合成
make&&make install
也可以把所有步驟用一組合命令來執行
./configure --prefix=/usr/local/newApp && make && make install
配置環境變量
針對所有用戶
修改 /etc/profile 文件,如果計算機僅僅作為開發使用時推存使用這種方法,因為所有用戶的shell都有權使用這個環境變量,可能會給系統帶來安全性問題。這里是針對所有的用戶的所有的shell
vi /etc/profile
在/etc/profile的最下面添加:
export PATH="$PATH:/NEW_PATH"
針對單一用戶
修改.bashrc文件,這種方法更加安全,可以把使用這些環境變量的權限控制到用戶級別,這里是針對某一特定的用戶,如果需要給某個用戶權限使用這些環境變量,只需要修改其個人用戶主目錄下的 .bashrc文件就可以了。
vi ~/.bashrc
在下面添加:
Export PATH="$PATH:/NEW_PATH"
七、系統資源
services命令
service可以控制系統服務(打開、關閉、重啟)
用法:service 【服務名稱】 start/restart/stop/status
service iptables status --查看iptables服務的狀態
service iptables start --開啟iptables服務
service iptables stop --停止iptables服務
service iptables restart --重啟iptables服務
service network restart ---重啟網絡服務
service network stop ---關閉網絡服務
chkconfig命令
開啟/關閉服務開機自啟動
chkconfig iptables off --關閉iptables服務的開機自啟動
chkconfig iptables on --開啟iptables服務的開機自啟動
增加環境變量
PATH=$PATH:/usr/bin/python
時鐘相關
hwclock --hctosys ---硬件時鐘與系統時鐘同步
hwclock --systohc ---系統時鐘和硬件時鐘同步
CPU相關
cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c ---查看CPU信息(型號)
cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l ---查看物理CPU個數
cat /proc/cpuinfo| grep "cpu cores"| uniq ---查看每個物理CPU對應的核數
cat /proc/cpuinfo| grep "processor"| wc -l ---查看邏輯CPU個數(虛擬機)
內存相關
cat /proc/meminfo | grep MemTotal ---查看內存容量(單位:KB)
硬盤相關
df -hT ---查看磁盤容量的使用情況
系統相關
lsb_release -a ---查看操作系統的信息
性能狀況相關
top ---查看當前性能狀況并實時刷新
Cpu(s)參數解釋:
us,user:用戶空間占用CPU的百分比;
sy,system: 內核空間占用CPU的百分比;
ni,niced:改變過優先級的進程占用CPU的百分比;
id,idle: 空閑CPU百分比;
wa,IO wait: IO等待占用CPU的百分比;
hi,Hardware IRQ:硬中斷占用CPU的百分比;
si,Software Interrupts: 軟中斷占用CPU的百分比;
st,Steal Time:當hypervisor服務另一個虛擬處理器的時候,虛擬 CPU 等待實際 CPU 的時間的百分比;
Mem參數解釋:
total:物理內存總容量(單位:KB);
used:使用中的內存總量(單位:KB);
free:空閑內存總量(單位:KB);
buffers:緩沖內存總量(單位:KB);
文章知識點與官方知識檔案匹配,可進一步學習相關知識
————————————————
版權聲明:本文為博主原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接和本聲明。
原文鏈接:https://blog.csdn.net/xiangxi1204/article/details/138044422
來源:本文內容搜集或轉自各大網絡平臺,并已注明來源、出處,如果轉載侵犯您的版權或非授權發布,請聯系小編,我們會及時審核處理。
聲明:江蘇教育黃頁對文中觀點保持中立,對所包含內容的準確性、可靠性或者完整性不提供任何明示或暗示的保證,不對文章觀點負責,僅作分享之用,文章版權及插圖屬于原作者。
Copyright?2013-2024 JSedu114 All Rights Reserved. 江蘇教育信息綜合發布查詢平臺保留所有權利
蘇公網安備32010402000125
蘇ICP備14051488號-3技術支持:南京博盛藍睿網絡科技有限公司
南京思必達教育科技有限公司版權所有 百度統計