Su Linux, puoi usare /proc. Vedi qui per una serie di esempi di riga di comando per leggere le statistiche.
Tuttavia, sarebbe meglio leggere direttamente i file da Node, utilizzando fs.readFile()
Aggiorna :C'è anche l'API del sistema operativo che è probabilmente migliore. Esempio di utilizzo:convertire l'output di os.cpus() in Node.js in percentuale
IMHO l'opzione migliore è usare il modulo systeminformation,
dove puoi recuperare informazioni dettagliate su hardware, sistema e sistema operativo con supporto per Linux, macOS, Windows parziale e FreeBSD.
Ad esempio per ottenere le informazioni sulla CPU:
const si = require('systeminformation');
// callback style
si.cpu(function(data) {
console.log('CPU-Information:');
console.log(data);
});
// promises style - new in version 3
si.cpu()
.then(data => console.log(data))
.catch(error => console.error(error));
// full async / await example (node >= 7.6)
async function cpu() {
try {
const data = await si.cpu();
console.log(data)
} catch (e) {
console.log(e)
}
}
Questo esempio risulterà quanto segue:
{ manufacturer: 'Intel®',
brand: 'Core™ i5-3317U',
vendor: 'GenuineIntel',
family: '6',
model: '58',
stepping: '9',
revision: '',
voltage: '',
speed: '1.70',
speedmin: '0.80',
speedmax: '2.60',
cores: 4,
cache: { l1d: 32768, l1i: 32768, l2: 262144, l3: 3145728 } }
CPU-Information:
{ manufacturer: 'Intel®',
brand: 'Core™ i5-3317U',
vendor: 'GenuineIntel',
family: '6',
model: '58',
stepping: '9',
revision: '',
voltage: '',
speed: '1.70',
speedmin: '0.80',
speedmax: '2.60',
cores: 4,
cache: { l1d: 32768, l1i: 32768, l2: 262144, l3: 3145728 } }