linux 學習——Shell命令組合(二)之 相得益彰

Linux Sed AWK CPU 馬上碼 2017-04-29

linux 學習——Shell命令組合(二)之 相得益彰

1、內核日誌 # dmesg 時間 # date

2、批量修改文件名:

a、find命令找到文件名擴展名為.output的文件。

b、 sed命令中的-e選項表示流編輯動作有多次,第一次是將找到的文件名中相對路徑前綴部分去掉,如./aa改為aa。流編輯的第二部分,是將20110311替換為mv & 20110310,其中&表示s命令的被替換部分,這裡即源文件名。 \1表示被替換部分中#的\(.*\)。# mv 20110311.output 20110310.output # mv 20110311abc.output 20110310abc.output # 最後將上面的輸出作為命令交給bash命令去執行,從而將所有20110311*.output改為20110311*.output

# /> find ./ -name "*.output" -print | sed -e 's/.\///g' -e 's/20110311\(.*\)/mv & 20110310\1/g' | bash

3、已經打開的句柄數 # lsof | wc -l

4、網絡抓包,直接輸出摘要信息到文件。 # tcpdump -c 10000 -i eth0 -n dst port 80 > /root/pkts

5、然後檢查IP的重複數 並從小到大排序 注意 “-t\ +0” 中間是兩個空格,less命令的用法。

# less pkts | awk {‘printf $3″\n”‘} | cut -d. -f 1-4 | sort | uniq -c | awk {‘printf $1″ “$2″\n”‘} | sort -n -t\ +0

6、kudzu查看網卡型號# kudzu –probe –class=network

7、獲取當前IP地址,強大的awk,一個命令搞定。

# ifconfig |awk -F"[ ]+|[:]" 'NR==2 {print $4}'

linux 學習——Shell命令組合(二)之 相得益彰

來點大自然的顏色不至於視覺疲勞

8、顯示運行3級別開啟的服務(從中瞭解到cut的用途,截取數據) # ls /etc/rc3.d/S* |cut -c 15-

9、查看進程樹 # ps aufx

10、CPU的數量 # cat /proc/cpuinfo |grep -c processor

11、CPU負載 # cat /proc/loadavgCPU負載 # mpstat 1 1

13、內存空間 # free 磁盤空間 # df -h磁盤I/O負載 # iostat -x 1 2

15、如發現某個分區空間接近用盡,可以進入該分區的掛載點,用以下命令找出佔用空間最多的文件或目錄 # du -cks * | sort -rn | head -n 10

17、網絡負載# sar -n DEV

網絡錯誤 # netstat -i # cat /proc/net/dev

19、網絡連接數目 # netstat -an | grep -E “^(tcp)” | cut -c 68- | sort | uniq -c | sort -n

20、進程總數 # ps aux | wc -l

21、將查找到的文件打包並copy到指定目錄:

a、通過find找到當前目錄下(包含所有子目錄)的所有*.txt文件。

b、 tar命令將find找到的結果壓縮成test.tar壓縮包文件。

c、 如果&&左側括號內的命令正常完成,則可以執行&&右側的shell命令了。

d、 將生成後的test.tar文件copy到/home/.目錄下。

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

linux 學習——Shell命令組合(二)之 相得益彰

相關推薦

推薦中...