blob: 4d3307425bfa612f87dd843e432e121e97c77b5a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
function defaultInterface(route) {
var lines = route.split(/\r?\n/);
for (var i = 0; i < lines.length; i++) {
var l = lines[i];
if (l.indexOf("default via") === 0) return l.split(/\s+/)[4];
}
throw "No default interface";
}
function getRxTxBytes(dev, iface) {
var lines = dev.split(/\r?\n/);
for (var i = 0; i < lines.length; i++) {
var l = lines[i].trim();
if (!l.startsWith(iface + ":")) continue;
var p = l.split(/\s+/);
return { rx: parseInt(p[1]), tx: parseInt(p[9]) };
}
throw "Interface not found";
}
function formatSize(size, unit) {
const labels = ["B", "K", "M", "G", "T"];
let power = 0,
kilo = 2 ** 10;
while (size > kilo && power < labels.length - 1) {
size /= kilo;
power++;
}
if (unit) {
return labels[power];
} else {
return size.toFixed(0);
}
}
|