日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

netstat获取本机监听的地址列表 —— *awk与splite命令实现*(sudo netstat -nl | grep tcp……)

發布時間:2025/10/17 编程问答 12 豆豆
生活随笔 收集整理的這篇文章主要介紹了 netstat获取本机监听的地址列表 —— *awk与splite命令实现*(sudo netstat -nl | grep tcp……) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

問題描述:

校驗某個端口是否被使用(80端口是否被使用):

1、獲取本機監聽的地址列表中,協議類型為tcp與tcp6的端口;

(sudo netstat -nl | grep tcp? | awk '{print $4}' | awk '{split($0,a,":");print a[2]a[4]}')

2、將獲取到的列表中的值,與要被對比的監聽的值(例如80值)向比較。

?代碼實現:

#include <stdio.h> #include <string.h>#define MAX_BUF 1024*2*2 #define CHECK 1#define SUCCESS 0 #define PARAMETER_VALUE_ERROR 101 //參數值錯誤,不符合要求,如有邊界值或選項參數/****************************************************************** 簡述:獲取本機的監聽端口列表 參數:void 返回值:監聽的端口列表,并以逗號分割,失敗返回NULL 備注: *******************************************************************/ static int _authservice_Check_port(char *pcPort) {int i = 0; FILE *pf = NULL;char szListen[MAX_BUF] = {0};/* 使用popen獲取本機地址 */pf = popen("sudo netstat -nl | grep tcp | awk '{print $4}' | awk '{split($0,a,\":\");print a[2]a[4]}'", "r");if(NULL == pf){return CHECK;}while(NULL != fgets(szListen, sizeof(szListen), pf)){ szListen[strlen(szListen) - 1] = '\0';printf("##%s##\n", szListen);if(!strncmp(pcPort, szListen, sizeof(pcPort))){return PARAMETER_VALUE_ERROR;}}return SUCCESS; }int main() {//端口的校驗,0~65535 且不能有使用過的端口if(SUCCESS != (_authservice_Check_port("80"))){ return PARAMETER_VALUE_ERROR;}else{printf("Has not been used!\n"); //沒有被使用}return SUCCESS; }

結果顯示:

[root@J01051386 test]# gcc link1.c [root@J01051386 test]# ./a.out ##111## ##48145## ##22## ##631## ##25## ##902## ##111## ##22## ##631## ##25## ##43260## ##902## Has not been used!

其他:

鏈表實現的方式見:

netstat獲取本機監聽的地址列表 —— *鏈表實現*(sudo netstat -nl | grep -w tcp | awk '{print $4}')

注:(鏈表實現中,只能匹配tcp不可匹配tcp6的端口)

總結

以上是生活随笔為你收集整理的netstat获取本机监听的地址列表 —— *awk与splite命令实现*(sudo netstat -nl | grep tcp……)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。