請(qǐng)收藏,Linux 運(yùn)維必備的 40 個(gè)命令總結(jié),收好了~
公眾號(hào)關(guān)注“杰哥的IT之旅”,
選擇“星標(biāo)”,重磅干貨,第一時(shí)間送達(dá)!

來(lái)自:51CTO博客
作者:AIOPS_DBA
鏈接:https://blog.51cto.com/wangwei007/1100991
1、刪除0字節(jié)文件
find -type f -size 0 -exec rm -rf {} \;
PS -e -o "%C : %p : %z : %a"|sort -k5 -nr
3、按 CPU 利用率從大到小排列
ps -e -o "%C : %p : %z : %a"|sort -nr
4、打印 cache 里的URL
grep?-r?-a?jpg?/data/cache/*?|?strings?|?grep?"http:"?|?awk?-F'http:'?'{print?"http:"$2;}'
5、查看 http 的并發(fā)請(qǐng)求數(shù)及其 TCP 連接狀態(tài):
netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
sed -i '/Root/s/no/yes/' /etc/ssh/sshd_config sed 在這個(gè)文里 Root 的一行,匹配 Root 一行,將 no 替換成 yes。7、如何殺掉 MySQL 進(jìn)程
ps aux |grep mysql |grep -v grep |awk '{print $2}' |xargs kill -9 (從中了解到awk的用途)killall -TERM mysqldkill -9 `cat /usr/local/apache2/logs/httpd.pid` 試試查殺進(jìn)程PID
8、顯示運(yùn)行 3 級(jí)別開(kāi)啟的服務(wù):
ls /etc/rc3.d/S* |cut -c 15- (從中了解到cut的用途,截取數(shù)據(jù))
9、如何在編寫(xiě) SHELL 顯示多個(gè)信息,用 EOF
cat << EOF+--------------------------------------------------------------+| === Welcome to Tunoff services === |+--------------------------------------------------------------+EOF
10、for 的巧用(如給 MySQL 建軟鏈接)
cd /usr/local/mysql/binfor i in *do ln /usr/local/mysql/bin/$i /usr/bin/$idone
11、取 IP 地址
ifconfig eth0 |grep "inet addr:" |awk '{print $2}'| cut -c 6-或者ifconfig | grep 'inet addr:'| grep -v '127.0.0.1' | cut -d: -f2 | awk '{ print $1}'
12、內(nèi)存的大小:
free -m |grep "Mem" | awk '{print $2}'
13
netstat -an -t | grep ":80" | grep ESTABLISHED | awk '{printf "%s %s\n",$5,$6}' | sort
14、查看 Apache 的并發(fā)請(qǐng)求數(shù)及其 TCP 連接狀態(tài):
netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
15、因?yàn)橥乱y(tǒng)計(jì)一下服務(wù)器下面所有的 jpg 的文件的大小,寫(xiě)了個(gè) SHELL 給他來(lái)統(tǒng)計(jì)。原來(lái)用 xargs 實(shí)現(xiàn),但他一次處理一部分。搞的有多個(gè)總和……,下面的命令就能解決。
find / -name *.jpg -exec wc -c {} \;|awk '{print $1}'|awk '{a+=$1}END{print a}'
CPU 的數(shù)量(多核算多個(gè)CPU,cat /proc/cpuinfo |grep -c processor)越多,系統(tǒng)負(fù)載越低,每秒能處理的請(qǐng)求數(shù)也越多。
16、CPU負(fù)載
cat /proc/loadavg
檢查前三個(gè)輸出值是否超過(guò)了系統(tǒng)邏輯 CPU 的4倍。
17、?CPU負(fù)載
mpstat 1 1
檢查 %idle 是否過(guò)低(比如小于5%)。
18、內(nèi)存空間
free
檢查 free 值是否過(guò)低,也可以用 # cat /proc/meminfo
19、SWAP 空間 ??
free檢查 swap used 值是否過(guò)高,如果 swap used 值過(guò)高,進(jìn)一步檢查 swap 動(dòng)作是否頻繁:
vmstat 1 5
觀察 si 和 so 值是否較大
20、磁盤(pán)空間 ?
df -hdu -cks * | sort -rn | head -n 10
21、磁盤(pán) I/O 負(fù)載
iostat -x 1 2檢查I/O使用率(%util)是否超過(guò) 100%
22、網(wǎng)絡(luò)負(fù)載
sar -n DEV檢查網(wǎng)絡(luò)流量(rxbyt/s, txbyt/s)是否過(guò)高
23、網(wǎng)絡(luò)錯(cuò)誤
netstat -i檢查是否有網(wǎng)絡(luò)錯(cuò)誤(drop fifo colls carrier),也可以用命令:# cat /proc/net/dev
24、網(wǎng)絡(luò)連接數(shù)目
netstat -an | grep -E “^(tcp)” | cut -c 68- | sort | uniq -c | sort -n
25、進(jìn)程總數(shù) ??
ps aux | wc -l檢查進(jìn)程個(gè)數(shù)是否正常 (比如超過(guò)250)
26、可運(yùn)行進(jìn)程數(shù)目 ??
vmwtat 1 5列給出的是可運(yùn)行進(jìn)程的數(shù)目,檢查其是否超過(guò)系統(tǒng)邏輯 CPU 的 4 倍
27、進(jìn)程 ??
top -id 1觀察是否有異常進(jìn)程出現(xiàn)。
28、網(wǎng)絡(luò)狀態(tài),檢查DNS,網(wǎng)關(guān)等是否可以正常連通
29、用戶
who | wc -l檢查登錄用戶是否過(guò)多 (比如超過(guò)50個(gè)) ? 也可以用命令:# uptime。
30、系統(tǒng)日志
# cat /var/log/rflogview/*errors檢查是否有異常錯(cuò)誤記錄 ? 也可以搜尋一些異常關(guān)鍵字,例如:
grep -i error /var/log/messagesgrep -i fail /var/log/messages
31、核心日志 ??
dmesg檢查是否有異常錯(cuò)誤記錄。
32、系統(tǒng)時(shí)間 ??
date檢查系統(tǒng)時(shí)間是否正確。
33、打開(kāi)文件數(shù)目 ??
lsof?|?wc?-l檢查打開(kāi)文件總數(shù)是否過(guò)多。
34、日志?
# logwatch –print35、殺掉80端口相關(guān)的進(jìn)程
lsof -i :80|grep -v “ID”|awk ‘{print “kill -9”,$2}’|sh36、清除僵死進(jìn)程
ps -eal | awk '{ if ($2 == "Z") {print $4}}' | kill -9
37、tcpdump 抓包,用來(lái)防止80端口被人攻擊時(shí)可以分析數(shù)據(jù)
tcpdump?-c?10000?-i?eth0?-n?dst?port?80?>?/root/pkts
38、然后檢查IP的重復(fù)數(shù)并從小到大排序 注意 “-t\ +0” ? 中間是兩個(gè)空格
# less pkts | awk {'printf $3"\n"'} | cut -d. -f 1-4 | sort | uniq -c | awk {'printf $1" "$2"\n"'} | sort -n -t\ +0
39、查看有多少個(gè)活動(dòng)的 php-cgi 進(jìn)程
netstat -anp | grep php-cgi | grep ^tcp | wc -l
40、查看系統(tǒng)自啟動(dòng)的服務(wù)
chkconfig --list | awk '{if ($5=="3:on") print $1}'
41、kudzu 查看網(wǎng)卡型號(hào)
kudzu --probe --class=network
常用正則表達(dá)式
1.匹配中文字符的正則表達(dá)式:?[\u4e00-\u9fa5]
評(píng)注:匹配中文還真是個(gè)頭疼的事,有了這個(gè)表達(dá)式就好辦了
2.匹配雙字節(jié)字符(包括漢字在內(nèi)):[^\x00-\xff]
評(píng)注:可以用來(lái)計(jì)算字符串的長(zhǎng)度(一個(gè)雙字節(jié)字符長(zhǎng)度計(jì)2,ASCII字符計(jì)1)
3.匹配空白行的正則表達(dá)式:\n\s*\r
評(píng)注:可以用來(lái)刪除空白行
4.匹配 HTML 標(biāo)記的正則表達(dá)式:<(\S*?)[^>]*>.*?\1>|<.*? />
評(píng)注:網(wǎng)上流傳的版本太糟糕,上面這個(gè)也僅僅能匹配部分,對(duì)于復(fù)雜的嵌套標(biāo)記依舊無(wú)能為力
5.匹配首尾空白字符的正則表達(dá)式:^\s*|\s*$
評(píng)注:可以用來(lái)刪除行首行尾的空白字符(包括空格、制表符、換頁(yè)符等等),非常有用的表達(dá)式
6.匹配Email地址的正則表達(dá)式:
\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
評(píng)注:表單驗(yàn)證時(shí)很實(shí)用
7.匹配網(wǎng)址URL的正則表達(dá)式:[a-zA-z]+://[^\s]*
評(píng)注:網(wǎng)上流傳的版本功能很有限,上面這個(gè)基本可以滿足需求
8.匹配帳號(hào)是否合法(字母開(kāi)頭,允許5-16字節(jié),允許字母數(shù)字下劃線):^[a-zA-Z][a-zA-Z0-9_]{4,15}$
評(píng)注:表單驗(yàn)證時(shí)很實(shí)用
9.匹配國(guó)內(nèi)電話號(hào)碼:\d{3}-\d{8}|\d{4}-\d{7}
評(píng)注:匹配形式如 0511-4405222 或 021-87888822
10.匹配騰訊QQ號(hào):[1-9][0-9]{4,}
評(píng)注:騰訊QQ號(hào)從10000開(kāi)始
11.匹配中國(guó)郵政編碼:[1-9]\d{5}(?!\d)
評(píng)注:中國(guó)郵政編碼為6位數(shù)字
12.匹配×××:\d{15}|\d{18}
評(píng)注:中國(guó)的×××為15位或18位
13.匹配ip地址:\d+\.\d+\.\d+\.\d+
評(píng)注:提取 IP 地址時(shí)有用
14.匹配特定數(shù)字:
^[1-9]\d*$ ? //匹配正整數(shù)^-[1-9]\d*$? //匹配負(fù)整數(shù)^-?[1-9]\d*$ //匹配整數(shù)^[1-9]\d*|0$ //匹配非負(fù)整數(shù)(正整數(shù)?+?0)^-[1-9]\d*|0$ //匹配非正整數(shù)(負(fù)整數(shù)?+?0)^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$ //匹配正浮點(diǎn)數(shù)^-([1-9]\d*\.\d*|0\.\d*[1-9]\d*)$ //匹配負(fù)浮點(diǎn)數(shù)^-?([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0)$ //匹配浮點(diǎn)數(shù)^[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0$ //匹配非負(fù)浮點(diǎn)數(shù)(正浮點(diǎn)數(shù)?+?0)^(-([1-9]\d*\.\d*|0\.\d*[1-9]\d*))|0?\.0+|0$ //匹配非正浮點(diǎn)數(shù)(負(fù)浮點(diǎn)數(shù)?+?0)
評(píng)注:處理大量數(shù)據(jù)時(shí)有用,具體應(yīng)用時(shí)注意修正
15.匹配特定字符串:
^[A-Za-z]+$ //匹配由26個(gè)英文字母組成的字符串^[A-Z]+$ //匹配由26個(gè)英文字母的大寫(xiě)組成的字符串^[a-z]+$ //匹配由26個(gè)英文字母的小寫(xiě)組成的字符串^[A-Za-z0-9]+$ //匹配由數(shù)字和26個(gè)英文字母組成的字符串^\w+$ //匹配由數(shù)字、26個(gè)英文字母或者下劃線組成的字符串
評(píng)注:最基本也是最常用的一些表達(dá)式
如果您覺(jué)得這篇文章對(duì)您有點(diǎn)用的話,麻煩您為本文來(lái)個(gè)四連:轉(zhuǎn)發(fā)分享、點(diǎn)贊、點(diǎn)在看、留言,因?yàn)檫@將是我寫(xiě)作與分享更多優(yōu)質(zhì)文章的最強(qiáng)動(dòng)力!
本公眾號(hào)全部博文已整理成一個(gè)目錄,請(qǐng)?jiān)诠娞?hào)后臺(tái)回復(fù)「m」獲取!
推薦閱讀:
1、工作效率高的 Linux 管理員都會(huì)的 10 個(gè)關(guān)鍵技巧!
2、Linux 環(huán)境變量配置全攻略
3、一款超牛逼的 Linux 終端復(fù)用神器(附安裝、使用教程)
4、Linux 修改權(quán)限命令 chmod 用法示例
5、Linux 經(jīng)典的幾款收包引擎
6、Linux 系統(tǒng)下對(duì)目錄擴(kuò)容的方法
7、一文吃透 Linux 提權(quán)
8、Linux 日志文件系統(tǒng)原來(lái)是這樣工作的
9、Linux 網(wǎng)絡(luò)狀態(tài)工具 ss 命令使用詳解
10、一文理解 Linux 平均負(fù)載,附排查工具 關(guān)注微信公眾號(hào)「杰哥的IT之旅」,后臺(tái)回復(fù)「1024」查看更多內(nèi)容,回復(fù)「加群」備注:地區(qū)-職業(yè)方向-昵稱?即可加入讀者交流群。
推薦閱讀:
2、Linux 環(huán)境變量配置全攻略
3、一款超牛逼的 Linux 終端復(fù)用神器(附安裝、使用教程)
4、Linux 修改權(quán)限命令 chmod 用法示例
5、Linux 經(jīng)典的幾款收包引擎
6、Linux 系統(tǒng)下對(duì)目錄擴(kuò)容的方法
7、一文吃透 Linux 提權(quán)
8、Linux 日志文件系統(tǒng)原來(lái)是這樣工作的
9、Linux 網(wǎng)絡(luò)狀態(tài)工具 ss 命令使用詳解
10、一文理解 Linux 平均負(fù)載,附排查工具
點(diǎn)個(gè)[在看],是對(duì)杰哥最大的支持!

