Điểm:1

Xóa vấn đề thuộc tính người dùng AD

lá cờ ve
$info = Get-ADUser -Filter * -Properties * | ForEach-Object {$_.PSObject.Properties} | Đối tượng ở đâu {$_.value -like "NULL"}

ForEach ($i trong $info){
    Đặt-ADUser -Identity $i.BaseObject.SamAccountName -Clear $i.Name
}

Trên đây là mã tôi đang sử dụng để tìm tất cả các trường người dùng AD có giá trị chuỗi là "NULL". Tôi đang cố xóa các trường này.

Dưới đây là ngoại lệ tôi thường thấy, mặc dù tên thuộc tính tồn tại rõ ràng (vì nó được lấy trực tiếp từ giá trị tên thuộc tính AD.

Tôi đang thiếu gì?

Set-ADUser: Thuộc tính hoặc giá trị dịch vụ thư mục được chỉ định không tồn tại
Tên thông số: OfficePhone
Tại dòng:2 ký tự:5
+ Set-ADUser -Identity $i.BaseObject.SamAccountName -Clear $i.Name
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~
    + CategoryInfo : InvalidArgument: (RHanson:ADUser) [Set-ADUser], ArgumentException
    + FullQualifiedErrorId : ActiveDirectoryCmdlet:System.ArgumentException,Microsoft.ActiveDirectory.Management.Commands.SetADUser
lá cờ cn
Thuộc tính tên chắc chắn sẽ không hoạt động. Nó chỉ là hệ thống. Những cái khác mà bạn có thể muốn thêm, hãy thử xử lý trong trường hợp không có thuộc tính hoặc chỉ tiếp tục.
lá cờ ve
Điều này thực sự làm việc như vốn có. Có một số trường như "MobilePhone" đã biến mất sau khi "mobile" bị xóa, không biết phải nghĩ gì về điều đó.
Điểm:1
lá cờ in

Ngay ra khỏi tài liệu:

-Điện thoại văn phòng

[â¦] Để sửa đổi thuộc tính đối tượng, bạn phải sử dụng tên hiển thị LDAP. [â¦]

-Điện thoại văn phòng

[â¦] Tên hiển thị LDAP (ldapDisplayName) của thuộc tính này là số điện thoại. [â¦]

Và đây là các tài liệu cho Thuộc tính số điện thoại:

CN: Điện thoại-Số
Ldap-Display-Name: số điện thoại

Không may, Get-ADUser -Properties * nhận được cả hai, Điện thoại văn phòngsố điện thoại và tôi không biết làm thế nào bạn có thể lập trình phân biệt các thuộc tính thực với các bí danh thuộc tính được tích hợp trong chính mô-đun đó.

Như một giải pháp thay thế, tuy nhiên, bạn có thể chuyển nó qua Get-ADObject không áp đặt các thuộc tính bí danh cho bạn:

$info = Get-ADUser -Filter * |
            Get-ADObject -Properties * |
            ForEach-Object {$_.PSObject.Properties} |
            Đối tượng ở đâu {$_.value -like "NULL"}

ForEach ($i trong $info){
    Đặt-ADUser -Identity $i.BaseObject.SamAccountName -Clear $i.Name
}

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.