users parsing fix (windows)
This commit is contained in:
parent
0017a7db5f
commit
9329bc7190
@ -30,6 +30,7 @@ For major (breaking) changes - version 3 and 2 see end of page.
|
|||||||
|
|
||||||
| Version | Date | Comment |
|
| Version | Date | Comment |
|
||||||
| -------------- | -------------- | -------- |
|
| -------------- | -------------- | -------- |
|
||||||
|
| 4.1.7 | 2019-05-08 | `users()` parsing fix (windows) |
|
||||||
| 4.1.6 | 2019-04-24 | `memory()` swap used fix (linux) |
|
| 4.1.6 | 2019-04-24 | `memory()` swap used fix (linux) |
|
||||||
| 4.1.5 | 2019-04-19 | refactored `wmic` calls to work also on Windows XP |
|
| 4.1.5 | 2019-04-19 | refactored `wmic` calls to work also on Windows XP |
|
||||||
| 4.1.4 | 2019-03-26 | `networkInterfaces()` speed bug (windows) |
|
| 4.1.4 | 2019-03-26 | `networkInterfaces()` speed bug (windows) |
|
||||||
|
|||||||
@ -80,6 +80,11 @@
|
|||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<th scope="row">4.1.7</th>
|
||||||
|
<td>2019-05-08</td>
|
||||||
|
<td><span class="code">users()</span> parsing fix (windows)</td>
|
||||||
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<th scope="row">4.1.6</th>
|
<th scope="row">4.1.6</th>
|
||||||
<td>2019-04-24</td>
|
<td>2019-04-24</td>
|
||||||
|
|||||||
30
lib/users.js
30
lib/users.js
@ -150,7 +150,7 @@ function parseUsersWin(lines) {
|
|||||||
headerDelimiter.push(start - 1);
|
headerDelimiter.push(start - 1);
|
||||||
let nextSpace = 0;
|
let nextSpace = 0;
|
||||||
for (let i = start + 1; i < header.length; i++) {
|
for (let i = start + 1; i < header.length; i++) {
|
||||||
if (header[i] === ' ' && header[i - 1] === ' ') {
|
if (header[i] === ' ' && ((header[i - 1] === ' ') || (header[i - 1] === '.'))) {
|
||||||
nextSpace = i;
|
nextSpace = i;
|
||||||
} else {
|
} else {
|
||||||
if (nextSpace) {
|
if (nextSpace) {
|
||||||
@ -159,20 +159,20 @@ function parseUsersWin(lines) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
for (let i = 1; i < lines.length; i++) {
|
||||||
for (let i = 1; i < lines.length; i++) {
|
if (lines[i].trim()) {
|
||||||
if (lines[i].trim()) {
|
const user = lines[i].substring(headerDelimiter[0] + 1, headerDelimiter[1]).trim() || '';
|
||||||
const user = lines[i].substring(headerDelimiter[0] + 1, headerDelimiter[1]).trim() || '';
|
const tty = lines[i].substring(headerDelimiter[1] + 1, headerDelimiter[2] - 2).trim() || '';
|
||||||
const tty = lines[i].substring(headerDelimiter[1] + 1, headerDelimiter[2] - 2).trim() || '';
|
const dateTime = util.parseDateTime(lines[i].substring(headerDelimiter[5] + 1, 2000).trim()) || '';
|
||||||
const dateTime = util.parseDateTime(lines[i].substring(headerDelimiter[5] + 1, 2000).trim()) || '';
|
result.push({
|
||||||
result.push({
|
user: user,
|
||||||
user: user,
|
tty: tty,
|
||||||
tty: tty,
|
date: dateTime.date,
|
||||||
date: dateTime.date,
|
time: dateTime.time,
|
||||||
time: dateTime.time,
|
ip: '',
|
||||||
ip: '',
|
command: ''
|
||||||
command: ''
|
});
|
||||||
});
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return result;
|
return result;
|
||||||
|
|||||||
@ -111,7 +111,7 @@ function decodeEscapeSequence(str, base) {
|
|||||||
function parseTime(t) {
|
function parseTime(t) {
|
||||||
t = t.toUpperCase();
|
t = t.toUpperCase();
|
||||||
const parts = t.split(':');
|
const parts = t.split(':');
|
||||||
let isPM = (parts[1] && parts[1].indexOf('PM') > -1);
|
let isPM = (parts[1] && (parts[1].toLowerCase().indexOf('pm') > -1) || (parts[1].toLowerCase().indexOf('p.m.') > -1));
|
||||||
let hour = parseInt(parts[0], 10);
|
let hour = parseInt(parts[0], 10);
|
||||||
const min = parseInt(parts[1], 10);
|
const min = parseInt(parts[1], 10);
|
||||||
hour = isPM && hour < 12 ? hour + 12 : hour;
|
hour = isPM && hour < 12 ? hour + 12 : hour;
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user