欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

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

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

一、控制臺使用技巧

基于我平時的工作經(jīng)驗,總結出一些我常用的快捷鍵

1.1 操作快捷鍵

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

      Ctrl+a / Ctrl+e:移動光標到命令行首 / 行尾

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

1.2 VIM文件編輯快捷鍵

       ZZ:文件保存并退出

1.3 進程操作快捷鍵

       Ctrl+c:強制終止程序

       Ctrl+z:掛起一個進程

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

1.4 linux命令中快捷鍵(top)

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

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

二、Shell命令合集

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

2.1 空間分析

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

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

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

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

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

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

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

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

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

2.2 指定文件操作

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

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

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

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

場景二:批量查找文件作拷貝打包

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

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

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

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

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

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

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

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

2.4 IP信息提取

場景一:通過命令獲取主機IP信息

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

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

三、常見問題

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

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

問題二:Shell適合用在什么場景中

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

總結

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

相關文章

  • 詳解 Shell中的grep命令

    詳解 Shell中的grep命令

    這篇文章主要介紹了 Shell中的grep命令,非常不錯,具有參考借鑒價值,需要的朋友參考下吧
    2017-05-05
  • Linux解壓縮(打開)Gz文件的命令詳解

    Linux解壓縮(打開)Gz文件的命令詳解

    GNU 的 Gzip 是一種流行的數(shù)據(jù)壓縮程序,而 GZ 文件是由標準 Gzip 壓縮的存檔文件,本文給大家介紹了如何在Linux解壓縮(打開)Gz 文件,文中有詳細的代碼示例供大家參考,需要的朋友可以參考下
    2023-12-12
  • linux find命令之xargs簡單概述

    linux find命令之xargs簡單概述

    這篇文章主要為大家詳細介紹了linux find命令之xargs的簡單使用,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-02-02
  • linux shell命令行參數(shù)用法詳解

    linux shell命令行參數(shù)用法詳解

    本文介紹了linux shell命令行參數(shù)的具體用法,用戶登錄到Linux系統(tǒng)時,可以看到一個shell提示符,標識了命令行的開始。用戶可以在提示符后面輸入任何命令及參數(shù)。
    2014-04-04
  • Linux創(chuàng)建用戶的操作命令

    Linux創(chuàng)建用戶的操作命令

    useradd或adduser命令用來建立用戶帳號和創(chuàng)建用戶的起始目錄,使用權限是超級用戶。這篇文章給大家介紹了Linux創(chuàng)建用戶的操作命令,感興趣的朋友一起看看吧
    2018-08-08
  • Linux網(wǎng)絡設置詳情

    Linux網(wǎng)絡設置詳情

    這篇文章主要介紹了Linux網(wǎng)絡設置,需要的朋友可以參考下面文章內(nèi)容
    2021-08-08
  • Bash Shell腳本學習小結

    Bash Shell腳本學習小結

    今天需要寫一個Shell腳本。很簡單,判斷一個日志文件是否大大于2G,如果大于2G則刪除。久了沒有寫bash,竟然一點都想不起來寫了。于是復習了一下,下面對今天的學習做個小結
    2013-01-01
  • shell腳本中echo顯示內(nèi)容帶顏色的實現(xiàn)方法

    shell腳本中echo顯示內(nèi)容帶顏色的實現(xiàn)方法

    這篇文章主要介紹了shell腳本中通過echo顯示帶顏色內(nèi)容的實現(xiàn)方法,需要的朋友可以參考下
    2013-11-11
  • 利用expect命令實現(xiàn)Shell自動化交互的方法詳解

    利用expect命令實現(xiàn)Shell自動化交互的方法詳解

    我們通過Shell可以實現(xiàn)簡單的控制流功能,如:循環(huán)、判斷等。下面這篇文章主要給大家介紹了關于利用expect命令實現(xiàn)Shell自動化交互的相關資料,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-12-12
  • Linux?Shell腳本多命令執(zhí)行邏輯的示例詳解

    Linux?Shell腳本多命令執(zhí)行邏輯的示例詳解

    Linux?中可以使用分號";“、雙and號”&&“和雙豎線”||"來連接多個命令。根據(jù)場景的不同適當?shù)氖褂煤线m的符號,感興趣的小伙伴可以了解一下
    2022-10-10

最新評論