最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

常用Shell命令集合和使用技巧(推薦)

 更新時(shí)間:2020年05月19日 14:04:20   作者:李俊的博客  
這篇文章主要介紹了最常用Shell命令集合和使用技巧,本文分場(chǎng)景通過實(shí)例講解給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

一、控制臺(tái)使用技巧

基于我平時(shí)的工作經(jīng)驗(yàn),總結(jié)出一些我常用的快捷鍵

1.1 操作快捷鍵

      Ctrl+r:可以快速查找歷史命令

      Ctrl+a / Ctrl+e:移動(dòng)光標(biāo)到命令行首 / 行尾

      Ctrl+w / Ctrl+k:刪除光標(biāo)之前 / 之后的內(nèi)容

1.2 VIM文件編輯快捷鍵

       ZZ:文件保存并退出

1.3 進(jìn)程操作快捷鍵

       Ctrl+c:強(qiáng)制終止程序

       Ctrl+z:掛起一個(gè)進(jìn)程

       Ctrl+d: 終端輸入exit后回車

1.4 linux命令中快捷鍵(top)

       Shift + p: 根據(jù)CPU使用率排序

       Shift + m: 根據(jù)Mem使用率排序

二、Shell命令合集

首先,我們先對(duì)Shell命令合集做一個(gè)分類,主要可分為 空間分析,指定文件操作,鏈接狀態(tài)分析,IP信息提取

2.1 空間分析

場(chǎng)景1: 磁盤空間不足,需快速定位日志目錄

該場(chǎng)景主要用在linux操作系統(tǒng)磁盤空間不足,需要快速定位磁盤使用情況,對(duì)文件的磁盤使用率做排序,需要用到如下組合命令:

du -x --max-depth=1 / | sort -k1 -rn #-x 表示跳過其他文件系統(tǒng)

-x表示跳過其他文件系統(tǒng),只分析本文件系統(tǒng)里面的文件,排除一些額外的干擾項(xiàng);--max-depth=1 表示只分析/ 目錄下第一級(jí)目錄下的所有文件大??;-k 表示具體按照那一列進(jìn)行排序;-r是倒序排列;-n表示只對(duì)數(shù)值排序

場(chǎng)景2:系統(tǒng)產(chǎn)生很多碎片文件,導(dǎo)致 inode 資源不足

該場(chǎng)景主要是操作系統(tǒng)產(chǎn)生大量碎片文件,隨之消耗大量innode,innode的過渡使用會(huì)導(dǎo)致innode資源不足無法創(chuàng)建文件,因?yàn)閐u 命令只能統(tǒng)計(jì)磁盤使用情況無法統(tǒng)計(jì)碎片文件的個(gè)數(shù),所以統(tǒng)計(jì)碎片文件個(gè)數(shù)需要用到如下組合命令

find -type f | awk -F/ -v OFS=/ 
 '{$NF="";dir[$0]++}END
{
for (i in dir) print dir[i] i}' | sort -k1 -rn | head

這條命令比較復(fù)雜,使用了find,awk,sort,head。

通過find找出指定文件類型的文件,然后管道給 awk,它可以把文本內(nèi)容按行進(jìn)行格式化輸出并展示,-F / 指定處理文件時(shí)字符串之間以 / 進(jìn)行分割,-v OFS=/ 表示文件顯示結(jié)果時(shí)以 / 進(jìn)行分割展示。對(duì)于awk命令整體規(guī)則而言有一個(gè) {} END {} 格式,前面的 {} 表示行處理操作,END{} 表示行處理后需要進(jìn)行整體結(jié)果出,在行處理操作邏輯中,設(shè)置$NF 為空表示將每一行的文件名信息去除,從而只保留目錄路徑,dir 是一個(gè)自增數(shù)組,用于統(tǒng)計(jì)結(jié)果。最后通過 for 循環(huán)進(jìn)行遍歷輸出dir關(guān)聯(lián)數(shù)組中所有行信息。

2.2 指定文件操作

場(chǎng)景一:批量查找文件對(duì)內(nèi)容做替換

場(chǎng)景一適用于一個(gè)目錄下有多個(gè)子目錄,并且子目錄下有大量文件,我們需要找到指定文件然后替換文件里面的內(nèi)容,需要用到如下組合命令:

(find . -name "*.txt"|xargs tar -cvf test.tar)
 && cp -f test.tar /home/.

通過find命令查找當(dāng)前目錄下的所有子文件夾名稱為 consumer.xml 的文件,然管道給 sed ,通過-i把文件內(nèi)容替換。

場(chǎng)景二:批量查找文件作拷貝打包

場(chǎng)景二主要是用在對(duì)查找到的指定文件進(jìn)行打包,然后拷貝到指定路徑,可以使用如下組合命令:

netstat -n | awk '/^tcp/{arr[$NF]++
} 
END {for (i in arr) print arr[i] " " i
}'

查找當(dāng)前目錄下的所有以 .txt結(jié)尾的文件,然后打包成test.tar,如果打包成功則把壓縮包拷貝到/home目錄下

2.3 網(wǎng)絡(luò)連接狀態(tài)分析

場(chǎng)景一:列出tcp協(xié)議下的連接,并統(tǒng)計(jì)所有狀態(tài)的總量

場(chǎng)景一主要用在查看服務(wù)器當(dāng)前有多少TCP類型的連接,分析TCP/IP網(wǎng)絡(luò)狀態(tài)(ESTABLISHED,TIME_WAIT)

netstat -n | awk '/^tcp/{arr[$NF]++} END {for (i in arr) print arr[i] " " i}'

對(duì)于awk命令整體規(guī)則而言有一個(gè) {} END {} 格式,上述命令分析了TCP協(xié)議下,所有類型連接的總數(shù),可用于分析查看當(dāng)前服務(wù)器連接數(shù)。

2.4 IP信息提取

場(chǎng)景一:通過命令獲取主機(jī)IP信息

ip a|grep "global"|awk'{print $2}'|awk -F/'{print $1}'

ip a負(fù)責(zé)查看主機(jī)上所有的網(wǎng)卡信息,然后過濾 global關(guān)鍵字,打印出第二列,再把子網(wǎng)掩碼移除掉即可獲取到主機(jī)ip

三、常見問題

問題一:Shell適不適合作多并發(fā)任務(wù)

答:不適合,Shell中一般是通過nohup的方式把需要并發(fā)執(zhí)行的任務(wù)放入后臺(tái),這樣做有存在一些問題,包括  進(jìn)程狀態(tài)不好控制,進(jìn)程間信息共享一般以文件形式進(jìn)行等,所以當(dāng)需要進(jìn)行大的并發(fā)任務(wù)執(zhí)行時(shí),建議使用Python,Go,PHP語言實(shí)現(xiàn)并發(fā)。

問題二:Shell適合用在什么場(chǎng)景中

答:Shell 適合用在追求運(yùn)維高效(非性能高效)要求的簡(jiǎn)單場(chǎng)景中,如日志切割、進(jìn)程分析、系統(tǒng)初始化等。

總結(jié)

到此這篇關(guān)于常用Shell命令集合和使用技巧(推薦)的文章就介紹到這了,更多相關(guān)Shell命令集合和使用技巧內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Linux壓縮及解壓縮命令tar|zip|rar|xz操作方法

    Linux壓縮及解壓縮命令tar|zip|rar|xz操作方法

    不管Linux還是其他操作系統(tǒng),數(shù)據(jù)的壓縮和解壓縮操作是經(jīng)常用到的,在windows平臺(tái)文件的相關(guān)操作被傻瓜化了,到了Linux平臺(tái)讓好多小伙伴感覺有點(diǎn)束手無策,本文為大家講解Linux的常用壓縮包操作,格式包含tar.gz, .tgz, .tar.bz2, .zip, .rar, .tar.xz,感興趣的朋友一起看看吧
    2024-02-02
  • Shell腳本中引用、調(diào)用另一個(gè)腳本文件的2種方法

    Shell腳本中引用、調(diào)用另一個(gè)腳本文件的2種方法

    這篇文章主要介紹了Shell腳本中引用、調(diào)用另一個(gè)腳本文件的2種方法,本文介紹了兩種方法的語法,然后給出實(shí)際使用實(shí)例和一些要注意的地方,需要的朋友可以參考下
    2015-06-06
  • shell 使用數(shù)組作為函數(shù)參數(shù)的方法(詳解)

    shell 使用數(shù)組作為函數(shù)參數(shù)的方法(詳解)

    下面小編就為大家?guī)硪黄猻hell 使用數(shù)組作為函數(shù)參數(shù)的方法(詳解)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-04-04
  • shell中冒號(hào)的特殊用法分享

    shell中冒號(hào)的特殊用法分享

    有關(guān)shell中冒號(hào)的特殊用法,供朋友們參考
    2013-02-02
  • 一篇通俗的Linux Shell體驗(yàn)教程

    一篇通俗的Linux Shell體驗(yàn)教程

    Shell是系統(tǒng)的用戶界面,提供了用戶與內(nèi)核進(jìn)行交互操作的一種接口。它接收用戶輸入的命令并把它送入內(nèi)核去執(zhí)行。本文將簡(jiǎn)單介紹Linux shell體驗(yàn),感興趣的小伙伴可以參考一下
    2023-05-05
  • Linux Shell 截取字符串的方法示例

    Linux Shell 截取字符串的方法示例

    這篇文章主要介紹了Linux Shell 截取字符串的方法示例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-06-06
  • Linux命令之cat和tail的用法介紹

    Linux命令之cat和tail的用法介紹

    這篇文章主要,給大家?guī)淼氖?Linux?命令系列,要介紹的是兩個(gè)常用的查看文件內(nèi)容的命令:cat?和?tail?命令,文中代碼示例介紹的非常詳細(xì),需要的朋友可以參考下
    2023-06-06
  • Linux網(wǎng)絡(luò)設(shè)置詳情

    Linux網(wǎng)絡(luò)設(shè)置詳情

    這篇文章主要介紹了Linux網(wǎng)絡(luò)設(shè)置,需要的朋友可以參考下面文章內(nèi)容
    2021-08-08
  • Linux鏈接命令的實(shí)例詳解

    Linux鏈接命令的實(shí)例詳解

    這篇文章主要介紹了Linux鏈接命令的實(shí)例詳解的相關(guān)資料,希望通過本文大家能掌握Linux鏈接命令的使用方法,需要的朋友可以參考下
    2017-08-08
  • 使用shell腳本取出服務(wù)器圖片的方法

    使用shell腳本取出服務(wù)器圖片的方法

    Shell 腳本(shell script),是一種為 shell 編寫的腳本程序。下面通過本文給大家介紹使用shell腳本取出服務(wù)器圖片的方法,需要的朋友參考下吧
    2017-12-12

最新評(píng)論

儋州市| 徐闻县| 潞城市| 远安县| 千阳县| 桃园市| 乌拉特中旗| 上犹县| 仙桃市| 永和县| 扎兰屯市| 大厂| 印江| 增城市| 浠水县| 屯昌县| 南京市| 斗六市| 伊宁市| 信丰县| 印江| 萍乡市| 固安县| 浮梁县| 广南县| 密山市| 临湘市| 西吉县| 阜阳市| 璧山县| 克什克腾旗| 化州市| 岑巩县| 无锡市| 庆云县| 渭南市| 韩城市| 夏河县| 墨竹工卡县| 洪泽县| 凌海市|