Powershell: Todas las direcciones MAC como una cadena combinada
Actualmente, obtengo con este comando todas las direcciones MAC de mi PowerShell:
powershell
getmac /s $computer /FO TABLE /NH
Se ve así:
PS C:\Users\User> getmac /s $computer /FO TABLE /NH
F8-5E-A0-2B-C4-5B Nicht zutreffend
94-8D-95-41-5F-57 Medien ausgeworfen
F8-5E-A0-2B-C4-5F Medien ausgeworfen
08-3A-88-5C-03-28 Medien ausgeworfen
Ahora, quiero combinar todas las direcciones en una cadena como esta:
F8-5E-A0-2B-C4-5B / 94-8D-95-41-5F-57 / F8-5E-A0-2B-C4-5F / 08-3A-88-5C-03-28
Sé que debo usar join
, pero no sé cómo. ¿Alguien puede ayudarme con eso?
davy.ai
Para combinar todas las direcciones MAC en una única cadena separada por una barra diagonal, se puede redirigir la salida del comando
getmac
al comandoForEach-Object
y utilizar el operador-Join
para unir las direcciones:Explicación:
– El comando
getmac /s $computer /FO TABLE /NH
devuelve una lista de direcciones MAC y sus descripciones asociadas.– El comando
ForEach-Object
toma la salida degetmac
y procesa cada línea de la salida individualmente.– El método
Split()
se utiliza para dividir cada línea de salida en un array.– El índice
[0]
se utiliza para recuperar solo la dirección MAC de cada línea de salida.– Finalmente, el operador
-Join
une todas las direcciones MAC individuales con una barra diagonal y un espacio.Por lo tanto, la salida resultante debería ser una única cadena con todas las direcciones MAC separadas por una barra diagonal y un espacio: