Linux是目前應(yīng)用最廣泛的服務(wù)器操作系統(tǒng)咆槽,基于Unix缸榛,開(kāi)源免費(fèi)盟萨,由于系統(tǒng)的穩(wěn)定性和安全性凉翻,市場(chǎng)占有率很高,幾乎成為程序代碼運(yùn)行的最佳系統(tǒng)環(huán)境捻激。linux不僅可以長(zhǎng)時(shí)間的運(yùn)行我們編寫(xiě)的程序代碼制轰,還可以安裝在各種計(jì)算機(jī)硬件設(shè)備中,如手機(jī)铺罢、路由器等艇挨,Android程序最底層就是運(yùn)行在linux系統(tǒng)上的。
[if !supportLists]1.??? [endif]Linux目錄結(jié)構(gòu):
/下級(jí)目錄結(jié)構(gòu)
bin:binaries存放二進(jìn)制可執(zhí)行文件
boot:存放用于系統(tǒng)引導(dǎo)時(shí)使用的各種文件
dev:devices用于存放設(shè)備文件
etc:etcetera存放系統(tǒng)配置文件
home:存放用戶(hù)文件的根目錄
lib:library存放跟文件系統(tǒng)中的程序運(yùn)行所需要的共享庫(kù)及內(nèi)核模塊
sbin:super user binaries存放二進(jìn)制可執(zhí)行文件韭赘,只有root才能訪(fǎng)問(wèn)
usr:unix shared resources用于存放共享的系統(tǒng)資源
var:variable用于存放運(yùn)行時(shí)需要改變數(shù)據(jù)的文件
[if !supportLists]2.??? [endif]Linux常用命令:
格式:
命令 -選項(xiàng) 參數(shù)(選項(xiàng)和參數(shù)可以為空)
eg:ls -la/usr
2.1 操作文件及目錄:
命令參數(shù)示例說(shuō)明
cdcd/home切換目錄
pwdpwd顯示當(dāng)前工作目錄目錄
touchtouch 1.txt創(chuàng)建空文件
mkdirmkdir testdir創(chuàng)建一個(gè)新目錄
-pmkdir -p dir1/dir2/dir3創(chuàng)建多級(jí)目錄缩滨,父目錄不存在情況下先生成父目錄
cpcp 1.txt復(fù)制文件或目錄
-rcp -r dir1/遞歸處理,將指定目錄下的文件與子目錄一并拷貝
mvmv dir1 dir2移動(dòng)文件或目錄、文件或目錄改名
rmrm 1.txt刪除文件
-r
-f
rm -rf dir1r同時(shí)刪除該目錄下的所有文件
f強(qiáng)制刪除文件或目錄
rmdirrmdir dir1刪除空目錄
catcat 1.txt顯示文本內(nèi)容
moremore 1.txt分頁(yè)顯示文本文件內(nèi)容脉漏,可前后翻頁(yè)苞冯,空格向后,b向前
lessless 1.txt分頁(yè)顯示文本文件內(nèi)容侧巨,可前后翻頁(yè)舅锄,空格向后,b向前(后面介紹)
headhead 1.txt查看文本開(kāi)頭部分司忱,默認(rèn)十行
-[num]head -20 1.txt查看文本開(kāi)頭前20行
tailtail 1.txt查看文本結(jié)尾部分皇忿,默認(rèn)十行
-[num]tail -20 1.txt查看文本結(jié)尾20行
-ftail -f 1.txt循環(huán)滾動(dòng)讀取文件并動(dòng)態(tài)展示在屏幕上,根據(jù)文件屬性追蹤
-Ftail -F 1.txt循環(huán)滾動(dòng)讀取文件并動(dòng)態(tài)展示在屏幕上坦仍,根據(jù)文件名追蹤
wcwc 1.txt統(tǒng)計(jì)文本的行數(shù)鳍烁、字?jǐn)?shù)、字符數(shù)
-mwc -m 1.txt字符數(shù)
wc -w 1.txt字?jǐn)?shù)
wc -l 1.txt行數(shù)
find-namefind / -name 1.txt在文件系統(tǒng)中的指定目錄下查找指定的文件
grepgrep aaa 1.txt在指定文件中查找包含指定內(nèi)容的行繁扎,在1.txt中查找包含aaa的所有行
lnln 1.txt 1_bak.txt建立鏈接文件
-sln -s 1.txt 1_bak.txt對(duì)源文件建立符號(hào)連接幔荒,而非硬鏈接
2.2 系統(tǒng)常用命令:
命令參數(shù)示例說(shuō)明
toptop顯示當(dāng)前系統(tǒng)中耗費(fèi)資源最多的進(jìn)程
datedate顯示系統(tǒng)當(dāng)前時(shí)間
ps較少單獨(dú)使用,配參數(shù)根據(jù)需求梳玫,ps -ef 或者ps -aux
-e
/-A
ps -e顯示所有進(jìn)程爹梁,環(huán)境變量
-fps -f全格式顯示
-aps -a顯示所有用戶(hù)的所有進(jìn)程(包括其他用戶(hù))
-ups -au按用戶(hù)名和啟動(dòng)時(shí)間的順序來(lái)顯示進(jìn)程
-xps -aux顯示無(wú)控制終端的進(jìn)程
kill-9kill -9 pid強(qiáng)制殺死一個(gè)進(jìn)程
dfdf顯示文件系統(tǒng)磁盤(pán)空間的使用情況
-hdf -h以人類(lèi)可讀的方式顯示,KB提澎,MB姚垃,GB等
dudu顯示指定的目錄及其子目錄已使用的磁盤(pán)空間的總和
-sdu -s*顯示指定目錄的總和,*當(dāng)前目錄下表示所有
-hdu -sh*以人類(lèi)可讀的方式展示虱朵,KB莉炉,MB,GB等
freefree顯示當(dāng)前內(nèi)存和交換空間的使用情況
ifconfigifconfig網(wǎng)卡網(wǎng)絡(luò)配置碴犬,常用語(yǔ)查看當(dāng)前ip地址
ifconfig eth0
192.168.12.22
臨時(shí)修改系統(tǒng)ip
(重啟后失效)
pingping baidu.com測(cè)試網(wǎng)絡(luò)的連通性
hostnamehostname查看主機(jī)名
shutdown-rshutdown -r先關(guān)機(jī),再重啟
-hshutdown -h關(guān)機(jī)后不重啟
halthalt關(guān)機(jī)后關(guān)閉電源梆暮,相當(dāng)于shutdown -h
rebootreboot重新啟動(dòng)服协,相當(dāng)于shutdown -r
2.3 壓縮解壓縮:
命令參數(shù)示例說(shuō)明
gzipgzip 1.txt壓縮后面的文件或者文件夾
-dgzip -d 1.txt.gz解壓后面的壓縮文件
-[num]gzip -9 1.txt用指定的數(shù)字num調(diào)整壓縮的速度,-1或-fast表示最快壓縮方法(低壓縮比)啦粹,-9或-best表示最慢壓縮方法(高壓縮比)偿荷。缺省值為6
tar-ctar -cvf 1.tar 1.txt建立一個(gè)壓縮打包文件的參數(shù)指令,例唠椭,將1.txt壓縮為1.tar跳纳,也可以指定多個(gè)文件或文件夾
-xtar -xvf 1.tar 1.txt解開(kāi)一個(gè)壓縮文件的參數(shù)指令
-ztar -zcvf 1.tar.gz 1.txt
tar -zxvf 1.tar.gz 1.txt
是否需要用gzip,使用gzip壓縮或者解壓
-v壓縮過(guò)程中顯示文件
-f使用檔名贪嫂,在f之后要立即接檔名
[if !supportLists]3.??? [endif]文件權(quán)限操作
r:可讀權(quán)限
w:可寫(xiě)權(quán)限
x:可執(zhí)行權(quán)限
第一位:文件類(lèi)型? d目錄寺庄,-普通文件,l鏈接文件
第二-四位:所屬用戶(hù)權(quán)限,u表示user
第五-七位:所屬組權(quán)限斗塘,g表示group
第八-十位:其他用戶(hù)權(quán)限赢织,o表示other
二-十位:a表示所有權(quán)限
命令參數(shù)實(shí)例說(shuō)明
chmodchmod u+r 1.txt修改文件或目錄的權(quán)限
u表示當(dāng)前用戶(hù),g表示同組用戶(hù)馍盟,o表示其他用戶(hù)于置,a表示所有用戶(hù)
r表示可讀,w表示可寫(xiě)贞岭,x表示可執(zhí)行
例:修改1.txt文件給當(dāng)前用戶(hù)添加可執(zhí)行權(quán)限
-Rchmod _r u+r dir 1修改指定目錄及其子目錄的所有文件的權(quán)限
三位數(shù)chmod 764 1.sh直接指定文件的權(quán)限
7:表示可讀可寫(xiě)可執(zhí)行八毯,4+2+1
6:表示可讀可寫(xiě),4+2
……
chownchown user1:group1 1.txt修改文件的所屬用戶(hù)和組
例:將1.txt文件的所屬用戶(hù)指定為user1瞄桨,組為group1
-Rchown -R user1:group1 1.txt修改目錄下所有文件及子目錄的所屬用戶(hù)和組话速,用數(shù)字表示權(quán)限(r=4,w=2,x=1,-=0)
[if !supportLists]4.??? [endif]Linux系統(tǒng)常用快捷鍵及符號(hào)命令
命令參數(shù)實(shí)例說(shuō)明
ctrl+c停止進(jìn)程
ctrl+l清屏
Ctrl+r搜索歷史命令
Ctrl+q退出
tab自動(dòng)補(bǔ)全
>?echo "haha">1.txt將前一條命令的輸出,寫(xiě)入后面的文本中
將文本清空讲婚,然后寫(xiě)入
>>?echo "lala">>1.txt將前一條尿孔,命令的輸出,寫(xiě)入到后面的文本中
不清空文本筹麸,追加到文本最后
|cat 1.txt | grep 'hello'管道命令活合,以前一個(gè)命令的輸出作為輸入,然后進(jìn)行運(yùn)算
例:打印1.txt中帶有hello字符串的行
*通配符物赶,指所有
[if !supportLists]5.??? [endif]vim編輯器
vi/vim是Linux上最常用的文本編輯器而且功能非常強(qiáng)大白指,只有命令,沒(méi)有菜單酵紫。
5.1 修改文本
i在光標(biāo)前插入
l在光標(biāo)當(dāng)前行開(kāi)始插入
a在光標(biāo)后插入
A在光標(biāo)當(dāng)前行末尾插入
o在光標(biāo)當(dāng)前行的下一行插入新行
O在光標(biāo)當(dāng)前行的上一行插入新行
:wq保存并退出
5.2 定位命令
:set nu顯示行號(hào)
:set nonu取消行號(hào)
gg跳到首行
G跳到末行
:n跳到第n行
5.3 替換和取消命令
uundo告嘲,取消上一步操作
Ctrl+rredo,返回到undo之前
r替換光標(biāo)所在處的字符
R在光標(biāo)所在處開(kāi)始替換奖地,按esc結(jié)束
5.4刪除命令
x刪除光標(biāo)所在處字符
nx刪除光標(biāo)所在處n個(gè)字符
dd刪除光標(biāo)所在行
ndd刪除光標(biāo)所在處n行
dG刪除光標(biāo)所在處到行尾的內(nèi)容
:5,7d刪除指定范圍的行
5.5常用快捷鍵
shift+zz保存退出橄唬,與“:wq”作用相同
v進(jìn)入字符可視模式
V進(jìn)入行可視模式
Ctrl+v進(jìn)入塊可視模式