作為一個(gè)程序員或者測(cè)試開(kāi)發(fā)人員,我們?cè)谶M(jìn)行項(xiàng)目部署和運(yùn)維時(shí),經(jīng)常會(huì)用到一些linux命令,可是這些命令老是忘記,每次用到的時(shí)候都要去谷歌百度,很是麻煩!這不,為了自己使用方便,對(duì)常見(jiàn)的linux命令, SHELL, VIM, Linux性能調(diào)優(yōu)和linux kernel的總結(jié),以便在用到時(shí)能夠快速地找到相關(guān)命令,同時(shí)有需要的朋友也可以參考搜藏該篇文章!文章對(duì)講到的每個(gè)命令都有詳細(xì)的參數(shù)解釋?zhuān)⑶医o出一些常用例子,因此也非常適合用來(lái)學(xué)習(xí)!
站在用戶(hù)的角度思考問(wèn)題,與客戶(hù)深入溝通,找到富拉爾基網(wǎng)站設(shè)計(jì)與富拉爾基網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶(hù)體驗(yàn)好的作品,建站類(lèi)型包括:網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站制作、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、域名注冊(cè)、雅安服務(wù)器托管、企業(yè)郵箱。業(yè)務(wù)覆蓋富拉爾基地區(qū)。
shell(命令解釋器)自帶的命令稱(chēng)為內(nèi)部命令,其它的是外部命令
內(nèi)部命令使用help幫助:help cd
外部命令使用help幫助:ls --help
type命令:用于區(qū)分是內(nèi)部命令還是外部命令:
ls is aliased to `ls --color=auto' #外部命令
cd is a shell builtin #內(nèi)部命令
pwd命令:顯示當(dāng)前目錄
ls命令:查看目錄和文件名稱(chēng)
ls -l 查看目錄各個(gè)字段含義
第一字段:首字母代表的是文件類(lèi)型 ,其中"-"為普通文件、"d"為目錄文件、"c"為字符設(shè)備文件、"b"為塊設(shè)備文件、"p"為管道文件、"l"為鏈接文件、"s"為socket文件?!皉wx”分別代表?yè)碛凶x、寫(xiě)和執(zhí)行權(quán)限,"-代表無(wú)對(duì)應(yīng)權(quán)限。三個(gè)"rwx"依次代表文件所有者、文件所有者所在用戶(hù)組、其它用戶(hù)對(duì)文件擁有的權(quán)限。
第二字段:文件硬連接數(shù)量
第三字段:文件擁有者
第四字段:文件擁有者所在組
第五字段:文件大小(以字節(jié)為單位)
第六字段:文件最后更改時(shí)間
第七字段:文件名(若為鏈接文件則追加顯示其鏈接的原文件的路徑)
ls命令其它參數(shù)含義:
-a顯示隱藏文件(.開(kāi)頭的文件)
-r逆序排序
-t按照時(shí)間順序顯示
-R遞歸顯示
ls -lartR : 按照時(shí)間順序倒序顯示所有文件及其文件夾的文件
cd命令:更改當(dāng)前的工作目錄
cd /path/... 絕對(duì)路徑
cd ./path/... 相對(duì)路徑(./可以省略)
cd ../path/... 相對(duì)路徑
mkdir -p 遞歸目錄:遞歸創(chuàng)建目錄
rmdir命令:刪除目錄
rmdir a/b/c/d/e/ #刪除空目錄
rm -r a/b/c/d/ #遞歸刪除目錄,但是系統(tǒng)會(huì)做多次詢(xún)問(wèn)
rm -rf a/b/c/d/ #刪除目錄,不做任何詢(xún)問(wèn)
cp命令:復(fù)制文件和目錄
-r 復(fù)制目錄
-p 保留用戶(hù)、權(quán)限、時(shí)間等文件屬性
mv命令:移動(dòng)文件和重命名
mv *.log 目標(biāo)目錄
通配符:
*匹配任何字符串
?匹配一個(gè)字符串
[xyz]任何一個(gè)字符串
[a-z]匹配一個(gè)范圍
cat命令:文本內(nèi)容顯示到終端
head命令:查看文件開(kāi)頭
head -3 文件名稱(chēng) #顯示文件開(kāi)頭3行
tail命令:查看文件末尾
tail -3 文件名稱(chēng) #顯示文件末尾3行
tail常用參數(shù)-f,文件內(nèi)容更新后,同步顯示更新的文件信息
tail -f 文件名稱(chēng)
wc命令:統(tǒng)計(jì)文件內(nèi)容信息
wc 文件名稱(chēng)
useradd命令:新建用戶(hù)
useradd 用戶(hù)名
userdel命令:刪除用戶(hù)
userdel 用戶(hù)名 用戶(hù)所在的家目錄不會(huì)被刪除
userdel -r 用戶(hù)名 用戶(hù)相關(guān)的所有配置都會(huì)被刪除
passwd命令:修改用戶(hù)密碼
passwd 用戶(hù)名
usermod命令:修改用戶(hù)屬性
/etc/passwd文件:查看用戶(hù)文件
tail /etc/passwd
/etc/shadow文件:查看用戶(hù)密碼
tail /etc/shadow
groupadd命令:添加用戶(hù)組
groupadd 用戶(hù)組
groupdel命令:刪除用戶(hù)組
groupdel 用戶(hù)組
用戶(hù)切換
su 用戶(hù)名 切換用戶(hù),但是用戶(hù)所在環(huán)境不變,即pwd路徑不會(huì)變化
su - 用戶(hù)名 切換用戶(hù),同時(shí)會(huì)切換到用戶(hù)家目錄,即/home/用戶(hù)名
sudo命令:普通用戶(hù)需要執(zhí)行root用戶(hù)權(quán)限的解決方案。
以下是一些常用命令匯總;The following table provides a reminder of most of the commands that we have covered so far. If you include the three, as-yet-unmentioned, commands in the last column, then you will probably be able to achieve 95% of everything that you will ever want to do in Unix (remember, you can use the man command to find out more about top , ps , and kill ). The power comes from how you can use combinations of these commands.
-c 'cc-address' -b 'bcc-address'
'to-address' | Command to send email | | mail -s "Subject"
to-address Filename` | Command to send email with attachment |
File Permission commands
Hope this Linux reference guide helps you!
希望這些常用的命令和系統(tǒng)原理,以及l(fā)inux操作可以幫助大家提升linux命令和操作!??!
Linux必學(xué)的60個(gè)命令:
安裝和登錄命令:login、shutdown、halt、reboot、install、mount、umount、chsh、exit、last;
文件處理命令:file、mkdir、grep、dd、find、mv、ls、diff、cat、ln;
系統(tǒng)管理相關(guān)命令:df、top、free、quota、at、lp、adduser、groupadd、kill、crontab;
網(wǎng)絡(luò)操作命令:ifconfig、ip、ping、netstat、telnet、ftp、route、rlogin、rcp、finger、mail、 nslookup;
系統(tǒng)安全相關(guān)命令:passwd、su、umask、chgrp、chmod、chown、chattr、sudo ps、who;
其它命令:tar、unzip、gunzip、unarj、mtools、man、unendcode、uudecode。
Linux的優(yōu)點(diǎn)
1、Linux由眾多微內(nèi)核組成,其源代碼完全開(kāi)源;
2、Linux繼承了Unix的特性,具有非常強(qiáng)大的網(wǎng)絡(luò)功能,其支持所有的因特網(wǎng)協(xié)議,包括TCP/IPv4、TCP/IPv6和鏈路層拓?fù)涑绦虻龋铱梢岳肬nix的網(wǎng)絡(luò)特性開(kāi)發(fā)出新的協(xié)議棧;
3、Linux系統(tǒng)工具鏈完整,簡(jiǎn)單操作就可以配置出合適的開(kāi)發(fā)環(huán)境,可以簡(jiǎn)化開(kāi)發(fā)過(guò)程,減少開(kāi)發(fā)中仿真工具的障礙,使系統(tǒng)具有較強(qiáng)的移植性;
學(xué)習(xí)軟件測(cè)試,最基本的linux命令必須掌握,現(xiàn)為大家整理如下:
一:系統(tǒng)管理相關(guān)命令
ls:可以看到整個(gè)目錄
1.su:在不退出登陸的情況下,切換到另一個(gè)用戶(hù)的身份
如:su root
切換到root這個(gè)用戶(hù),將提示輸入密碼,輸完密碼后即可登陸
# 超級(jí)用戶(hù)提示符
$ 普通用戶(hù)提示符
whoami:確認(rèn)自己身份
history:查看運(yùn)行命令的 歷史
ifconfig:顯示或設(shè)置網(wǎng)絡(luò)設(shè)備的命令,我們可以用這個(gè)命令查看自己虛擬機(jī)的IP地址
ping:ping是Windows.Unix,Linux系統(tǒng)下的一個(gè)命令.ping命令也屬于一個(gè)通信協(xié)議,是TCP/I協(xié)議的一部分。利用“ping"命令可以檢查網(wǎng)絡(luò)是否聯(lián)通
停下來(lái)是:Ctrl+C(4)
kill:殺死進(jìn)程(kill-9 進(jìn)程號(hào) 強(qiáng)制殺死進(jìn)程)
目錄操作命令
linux的文件系統(tǒng)是采用層級(jí)式的樹(shù)狀目錄結(jié)構(gòu),在此結(jié)構(gòu)中的最上層是根目錄”/“,下層是各種各樣的子目錄和文件。
/:unix 文件系統(tǒng)的上層根目錄
root:存放root用戶(hù)的相關(guān)文件
home:存放普通用戶(hù)的相關(guān)文件
bin:存放常用命令的目錄,如vi,su,普通用戶(hù)就可以提取的命令
sbin:要具有”一定權(quán)限才可以使用命令“
etc:存放配置的相關(guān)文件
vir:存放經(jīng)常變化的文件。如:網(wǎng)絡(luò)連接的sock文件
boot:啟動(dòng)目錄,存放引導(dǎo)系統(tǒng)啟動(dòng)的相關(guān)文件
usr:安裝一個(gè)軟件的默認(rèn)目錄,相當(dāng)于Windows下的program files
dev:設(shè)備文件保存目錄
lb :系統(tǒng)庫(kù)保存文件
pwd命令:顯示當(dāng)前路徑
cd命令:切換目錄
用法:cd目錄路徑
cd./切換到上級(jí)目錄
cd/切換到根目錄
cd~(或只有cd) 切換到用戶(hù)主目錄(home底下以用戶(hù)名命名的文件夾)
/root目錄
cd /opt ---cd bin 與cd /opt---cd /bin的區(qū)別
mkdir創(chuàng)建目錄
mkdir 目錄名
rmdir刪除空目錄
用法:rmdir 目錄名
也可用:rm-rf 目錄名
touch a.txt創(chuàng)建一個(gè)a.txt文件
二:文件操作命令
在Linux系統(tǒng)中,幾乎所有內(nèi)容包括文檔,命令,設(shè)備和目錄等都組織成文件的形式,用文件來(lái)管理,常用文件命令有:
|| 查看文件目錄,以及它們對(duì)應(yīng)的屬性信息
cp 復(fù)制命令
用法:cp[選項(xiàng)] 文件名或目錄 目標(biāo)地址
-R 拷貝目錄及目錄下所有目錄和文件
cp a.txt b.txt 將a文件復(fù)制,且另命名為b文件(目錄名)
mv 移動(dòng)命令
用法:mv文件名或目錄 目標(biāo)位置
mv a.txt../ 將a文件移動(dòng)到上級(jí)目錄(將一個(gè)文件移動(dòng)到另一個(gè)目錄沒(méi)有重命名)
mv a.txt ../b.txt 將a文件移動(dòng)到上一級(jí)并改名為b文件(將一個(gè)文件移動(dòng)到另一個(gè)目錄并重命名)
移動(dòng)目錄的時(shí)候,如果出現(xiàn)覆蓋的情況,且被覆蓋的目錄非空,需要加一個(gè)'-b'的參數(shù)才能移動(dòng)成功。被覆蓋的目錄此時(shí)會(huì)生產(chǎn)一個(gè)備份。
rm 刪除文件或目錄(i:操作時(shí)進(jìn)行詢(xún)問(wèn))
-f 強(qiáng)制刪除
-r 刪除目錄
常用:rm -f文件或目錄
find命令 查找文件
用法:find[路徑][選項(xiàng)]
常用選項(xiàng)有:
find . -name a.txt 在當(dāng)前目錄查找文件a.txt
find / -name a.txt 從當(dāng)前目錄查找a.txt文件
grep命令
功能:在指定文件中查找字符(串)并打印該行;過(guò)濾,經(jīng)常跟管道符號(hào)一起出現(xiàn)
用法:grep 字符串 文件名
grep xyz file 在file文件中尋找band字符串所在的那一行
文件編輯命令
vi:是linux下常用的文本編輯器
調(diào)用方法:vi a.txt(如果a.txt不存在,則創(chuàng)建,保存退出則創(chuàng)建成功)
按鍵盤(pán)i進(jìn)入編輯狀態(tài)(注意:都是英文輸入法下進(jìn)行輸入)
退出編輯按ESC鍵,退出方法
不保存退出: :q!
保存退出: :wq
輸入/,進(jìn)入搜索,輸入你需要搜索的文字,按Enter
按鍵盤(pán)G,可以直接定位到最末行
按鍵盤(pán)g,可以直接定位到首
cat命令:顯示文本文件內(nèi)容
用法: cat文件名 cat 文件名字
head:查看前幾行 用法:head -n 5 文件名
tail:從指定點(diǎn)開(kāi)始將文件寫(xiě)到標(biāo)準(zhǔn)輸出,使用tail命令的-f選項(xiàng)可以方便的查閱正在改變的日志文件
tail -n 5文件名 查看后幾行
tail -f error.log 不斷刷新,看到最新內(nèi)容
系統(tǒng)資源查詢(xún)命令
ps 查看進(jìn)程(動(dòng)態(tài))
-ef 顯示所有運(yùn)行進(jìn)程,并顯示啟動(dòng)進(jìn)程的命令
Uid:用戶(hù)ID,PID;進(jìn)程id PPID:父進(jìn)程,C:進(jìn)程cpu占用率,Stime:進(jìn)程從啟動(dòng)到現(xiàn)在所運(yùn)行的時(shí)間
TTY:終端號(hào)。CMD:命令名稱(chēng)和參數(shù)
netstat 查看網(wǎng)絡(luò)狀況
netstat -apn 查看所有端口
管道命令
管道使用”|“符號(hào),并且在命令之間建立管道,將前面命令的輸出作為后面命令的輸入
如:ls|greap abc:管卡道前面的命令顯示當(dāng)前目錄下的文件,后面從列出的文件名中尋找含有abc字符串的文件或者目錄
正常情況下,殺死服務(wù)進(jìn)程(比如殺死tomcat進(jìn)程)
通過(guò)進(jìn)程名找到進(jìn)程,在殺死進(jìn)程
通過(guò)命令查找tomcat進(jìn)程:ps -ef|grep tomcat(ps -ef是查找所有運(yùn)行的進(jìn)程,通過(guò)管道符找到所有進(jìn)程中包含了”tomcat"字符串的進(jìn)程,即為tomcat進(jìn)程),假如5541
殺掉此進(jìn)程,kill -9進(jìn)程id(kill -9 5541)
通過(guò)端口來(lái)找到進(jìn)程,再殺死進(jìn)程
通過(guò)命令查找到占用此端口的進(jìn)程編號(hào):netstat -apn|grep 8080 根據(jù)8080查進(jìn)程,假如 5541
殺掉進(jìn)程:kill -9 pid(kill -9 5541)
三:權(quán)限賦予命令:chmod
linux系統(tǒng)是一種典型的多用戶(hù)系統(tǒng),不同的用戶(hù)處于不同的地位,擁有不同的權(quán)限。為了保護(hù)系統(tǒng)的安全性,linux系統(tǒng)對(duì)不同的用戶(hù)訪(fǎng)問(wèn)同一文件(包括目錄文件)的權(quán)限做了不同的規(guī)定。在linux中可以使用||或ls -|命令來(lái)顯示一個(gè)文件的屬性以及文件所屬的用戶(hù)和組。
chmod語(yǔ)法:chmod[-R] xyz文件或目錄
讀(r): 4 寫(xiě)(w): 2 執(zhí)行(x): 1
chmod 532 test.txt
壓縮,解壓命令
例如:將test文件壓縮成test.tar.gz
安裝軟件命令
yum 自動(dòng)下載安裝(前提:能訪(fǎng)問(wèn)外網(wǎng))
yum[操作][package]
例如:yum install mysql-server(安裝mysql服務(wù)器)
rpm 安裝
rpm -ivh 軟件包名(ivh 安裝顯示安裝進(jìn)度)