linux中從檔案獲取當前網絡卡的工作模式

2021-06-03 13:47:51 字數 1104 閱讀 7062

**:

//copy by duanjigang from source code of ethtool 6

struct ethtool_cmd

;int get_settings(const char* devname)

ecmd.cmd = 1;

ifr.ifr_data = (caddr_t)&ecmd;

if(ioctl(fd, siocethtool, &ifr))

//duplex 0 half 1 full

fprintf(stdout, "settings for %s: speed:%d, duplex:%s\n", devname, ecmd.speed, ecmd.duplex ? "full" : "half");

close(fd);

return 1;

}#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

typedef unsigned short u16;

typedef unsigned int u32;

typedef unsigned char u8;

#include

#include

int get_settings(const char* devname)

ecmd.cmd = 1;

ifr.ifr_data = (caddr_t)&ecmd;

if(ioctl(fd, siocethtool, &ifr))

//duplex 0 half 1 full

fprintf(stdout, "settings for %s: speed:%d, duplex:%s\n", devname, ecmd.speed,

ecmd.duplex ? "full" : "half");

close(fd);

return 1;

}int main(int argc, char *argv)

linux 獲取網絡卡資訊

sar n dev 2 10 41 37 am iface rxpck s txpck s rxkb s txkb s rxcmp s txcmp s rxmcst s 10 41 39 am eth0 1.50 1648.00 0.15 117.54 0.00 0.00 1.00 10 41 39...

Linux獲取當前時間

1.linux下與時間有關的結構體 struct timeval 其中tv sec是由凌晨開始算起的秒數,tv usec則是微秒 10e 6 second struct timezone tv minuteswest是格林威治時間往西方的時差,tv dsttime則是時間的修正方式。struct t...

Linux 獲取當前目錄

兩種方法 1.利用getcwd 函式取得當前工作目錄 相當於windows下的getcurrentdirectory 2.取得實際檔案目錄 相當於windows下的getmodulefilename 原理 每個程序在 proc下都有乙個以程序號命名的目錄。在該目錄下有exe檔案,該檔案是乙個鏈結檔案...