[JS] Separando string da funçao exec() do modulo shelljs
Bom dia, galera!
Estou desenvolvendo um programa que le cada ip da minha rede usando o modulo shelljs
, porém nao consigo separar os dados retornados, quero retornar cada linha retornada em uma array de tamanho n, onde n é a quantidade de linhas retornada.
const shell = require('shelljs')
//acho que aq da pra separar mas nao sei como
let ips[] = shell.exec('arp -a')
for( i = 0; i<ips.length;i++)
console.log(ips[i])
Se o mesmo retorna algo como:
10.0.0.1 (10.0.0.1) at 24:fd:d:15:d8:91 on en0 ifscope [ethernet]
10.0.0.104 (10.0.0.104) at be:f3:5:d4:13:c0 on en0 ifscope [ethernet]
E você precisa somente do IP, o certo é verificar se cada linha retornada é uma string. Se sim, poderia fazer:
const unsanitizedIps[] = shell.exec('arp -a')
const sanitizedIps = []
for(let i = 0; i<ips.length;i++) {
sanitizedIps.push(unsanitizedIps[i].split('(')[0].trim())
// linha: 10.0.0.1 (10.0.0.1) at 25:ad:d:12:d2:11 on en0 ifscope [ethernet]
// saida: 10.0.0.1
// Obs.: o split pode ser feito no espaço em branco também. ".split(' ')"
}
Edit: Se entendi certo, é isso ai.
Boa, é isso mesmo, mas o que significa,
```js
'(')[0].trim()
```
?
Eu tentei usar o `\t` pra tentar separar mas nao deu certo.
Obrigado pela ajuda!
O **trim()** serve para remover espaços em brancos que ficam nas extremidades.
Segue link com uma explicação completa. [trim()](https://www.w3schools.com/jsref/jsref_trim_string.asp)