agregar y eliminar elementos de una matriz de PowerShell

Tengo un problema extraño. Intentando crear un PSobject personalizado con un bucle foreach para las propiedades., Parece que eso no es posible

en el siguiente ejemplo:
1) hago una matriz vacía obj object1
2) Items es una matriz que contiene Data1,Data2 <–básicamente un csv, 1 cadena dividida con una coma
3) creo un nuevo psobject y splat las propiedades, la clave es el primer elemento de la división y el valor es el segundo elemento de la división.
4) Después de crear el nuevo objeto, Le digo a Powershell que lo agregue de nuevo a la matriz vacía.

# ()
# foreach (item item in items items) {
# obj Object2=New-Object psobject-Property @{
# data data.split («,») = data data.,split(«,»)
# }
# obj object1 + = obj Object2
# }

ahora para la parte extraña, si | GM el objeto, solo obtiene 1 valor de propiedad, no todo.

obj object1 / GM

TypeName: System.Gestión.Automatización.PSCustomObject

Name MemberType Definition
— —- —-
Es igual al método bool es igual a(System.Object obj)
método GetHashCode int GetHashCode ()
Método GetType type GetType ()
método ToString string ToString ()
Archive NoteProperty System.String ARCHIVE = 305.86

Nota: Solo se establece 1 propiedad, Archive., Aquí va la misma operación con la lógica foreach

object object / GM

TypeName: System.Gestión.Automatización.PSCustomObject

Name MemberType Definition
— —- —-
Es igual al método bool es igual a(System.Object obj)
método GetHashCode int GetHashCode ()
Método GetType type GetType ()
método ToString string ToString ()
Archive NoteProperty System.String ARCHIVE = 305.86
Backup NoteProperty System.String BACKUP = 3941.60
Full_dbbackup NoteProperty System.String FULL_DBBACKUP = 75.23
MIGRATION NoteProperty System.String MIGRATION = 1903.,58 sistema de NoteProperty de recuperación.String RECLAMATION = 443.16
recuperar sistema NoteProperty.String RETRIEVE = 14.75

en teoría, la lógica foreach debería funcionar. lo que es realmente extraño, la lógica foreach contiene las propiedades, simplemente no son visibles, obj object1.copia de seguridad devolverá un valor, pero como se puede ver en el / GM, no es visible. ¿Alguien puede explicarlo?

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Ir a la barra de herramientas