none
Problème script Powershell RRS feed

  • Question

  • Bonjour à tous, je suis entrain de créer un script qui me permettra d'importer une liste d'utilisateur depuis un fichier excel renomé en csv. Je rencontre une erreur que je n'arrive pas à régler... "

     You cannot call a method on a null-valued expression.

    At C:\Users\Administrator\Desktop\pscript.ps1:10 char:5

    +     $flfname = $fname.substring(0, 1)

    +     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

        + CategoryInfo          : InvalidOperation: (:) [], RuntimeException

        + FullyQualifiedErrorId : InvokeMethodOnNull 

     " besoin d'aide s'il vous plait. ci joint mon script.

    Import-Module ActiveDirectory
    $users = Import-Csv -Delimiter ";" -Path "C:\adduser\organization.csv"
    
    foreach ($user in $users){
        
        $name = $user.Firstname + " " + $user.Lastname
        $fname = $user.Firstname
        $lname = $user.Lastname
    
        $flfname = $fname.substring(0, 1)
    
        $login = $flfname + $user.Lastname
        $Ucountry = $user.country
        $Ucity = $user.location
        
        if ($Ucountry -eq "France") {
        switch ($user.OU){
            "Direction Department" {$ou = "OU=Users,OU=Direction Department, OU=Direction,DC=shiptruck,DC=lan"}
            "Financial Department" {$ou = "OU=Users,OU=Financial Department, OU=Direction,DC=shiptruck,DC=lan"}
            "Marketing Department" {$ou = "OU=Users,OU=Marketing Department, OU=Direction,DC=shiptruck,DC=lan"}
            "Commercial Departmentl" {$ou = "OU=Users,OU=Commercial Department, OU=Direction,DC=shiptruck,DC=lan"}
            "Management" {$ou = "OU=Users,OU=Management,OU=Paris,OU=Agencies,DC=shiptruck,DC=lan"}
            "Plateform Staff" {$ou = "OU=Users,OU=Plateform Staff,OU=Paris,OU=Agencies,DC=shiptruck,DC=lan"}
         }
        try {
                New-ADUser -Name $name -SamAccountName $login -UserPrincipalName $login -DisplayName $name -GivenName $fname -Surname $lname -ChangePasswordAtLogon $true -City $Ucity -Country $Ucountry
                echo "Utilisateur ajouté : $name"
    
            } catch{
                echo "utilisateur non ajouté : $name"
            }
       } break
       
    }

    lundi 18 mai 2015 11:10

Réponses

Toutes les réponses