Tôi có một mảng các đối tượng có cấu trúc sau:Liên minh và giao lộ trong PowerShell?
structure Disk
{
int UID;
String Computer;
}
Một máy tính có thể có một loạt các đĩa được chia sẻ, và một đĩa có thể được chia sẻ giữa các máy tính.
Tôi muốn tìm hiểu tất cả các ổ đĩa chung cho tất cả các máy tính. Ví dụ, tôi có máy tính A, B và C; Đĩa 1, 2 và 3. Mảng đĩa là {1, A}, {1, B}, {2, A}, {2, B}, {2, C}, {3, A}. Kết quả mà tôi muốn là đĩa 2, bởi vì nó xuất hiện trên A, B và C.
Có cách nào hiệu quả để đạt được điều này không?
Với nhiều vòng lặp foreach nó có thể đạt được, nhưng chắc chắn tôi muốn có một cách tốt hơn. Tôi đang suy nghĩ về các hoạt động như giao lộ, nhưng không tìm thấy điều này trong PowerShell.
Tôi khuyên bạn nên thay đổi tiêu đề thành "Liên minh, Giao lộ và khác biệt/Đặt phép trừ trong PowerShell". Vì vậy, chúng tôi sẽ có tất cả các hoạt động được đặt ở một nơi. –
Dựa trên câu hỏi và gợi ý ở đây, tôi đã tạo ra một chức năng PowerShell để làm Liên minh, Giao lộ và Trừ cho các đối tượng. Kiểm tra xem nó ra: https://sqljana.wordpress.com/2015/09/23/perform-set-operations-union-intersection-minus-complement-using-powershell/ –