blob: 221e7af3f1935ebcd24e0651a0cfff27d08cc04b (
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
|
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)
}
}
|