2014-03-25 50 views
0
New-ADUser -SamAccountName $user.SamAccountName -Name ($user.FirstName + " " + $user.LastName) ` 
    -DisplayName ($user.FirstName + " " + $user.LastName) -GivenName $user.FirstName -Surname $user.LastName ` 
    -EmailAddress ($user.FirstName + "_" + $user.LastName + $dnsroot) -UserPrincipalName ($user.SamAccountName + $dnsroot) ` 
    -Title $user.title -manager $user.manager ` 
    -Enabled $true -ChangePasswordAtLogon $false -PasswordNeverExpires $true ` 
    -AccountPassword $defpassword -PassThru ` 
    -AccountExpirationDate $expires -Path 'rop.com/ts/otos/ate/PMO/'` 
    -telephoneNumber "9856"' 
    -LoginScript "es.cmd"' 
    -Description "etant"' 
    -Street "unt"` 

我不使用PowerShell太多,所以我不確定如何解決此錯誤。活動目錄PowerShell創建用戶

我得到的錯誤是:Missing expression after unary operator '-'

回答

1

有幾個問題。

如上所述,您需要在反引號和行尾之間留出一個空格以便繼續行。此外,在最後一行中,您使用單引號(')代替反引號(`)。

如果示例代碼中的最後一行是您的命令的最後一行,則在其末尾有倒勾會導致錯誤。

此外,-telephoneNumber而不是參數New-ADUser。處理電話號碼的唯一默認參數是-HomePhone,-OfficePhone-MobilePhone。否則,您需要使用-OtherAttributes參數。

在這種情況下,我想你想-OtherAttributes @{telephonenumber="9856"}

+0

謝謝你,因爲我得到一個錯誤,因爲telephoneNumber不是一個參數 – user3438716

1

我敢肯定你倒引號之前需要一個空間。

New-ADUser -SamAccountName $user.SamAccountName -Name ($user.FirstName + " " + $user.LastName) ` 
-DisplayName ($user.FirstName + " " + $user.LastName) -GivenName $user.FirstName -Surname $user.LastName ` 
-EmailAddress ($user.FirstName + "_" + $user.LastName + $dnsroot) -UserPrincipalName ($user.SamAccountName + $dnsroot) ` 
-Title $user.title -manager $user.manager ` 
-Enabled $true -ChangePasswordAtLogon $false -PasswordNeverExpires $true ` 
-AccountPassword $defpassword -PassThru ` 
-AccountExpirationDate $expires -Path 'rop.com/ts/otos/ate/PMO/' ` 
-telephoneNumber "9856" ` 
-LoginScript "es.cmd" ` 
-Description "etant" ` 
-Street "unt" 
+0

似乎並不成爲問題,因爲我仍然得到這個錯誤 – user3438716

+0

你複製/粘貼我的例子代碼?我還修正了應該反駁的撇號。 –

+0

它現在工作。任何想法如何使用撇號和反嘀的習慣?這是我第一次爲AD編寫powershell,所以我不確定語法。 – user3438716