Scénario Powershell Pour l'analyse syntaxique CSV, Pour obtenir la propriété du fichier

J'ai besoin d'obtenir le propriétaire des fichiers que j'ai une liste dans le fichier .CSV, En tant que chemin absolu vers le dossier afin d'ajouter le résultat à la colonne secondaire, qui répertorie les propriétaires des fichiers.

Merci en avance.

Première colonne CSV:

G:\Directory1\file1.zip
H:\Directory3\file4.docx
.
.
.
F:\Directory99\file234324.bat

La deuxième colonne est absente, mais j'aimerais qu'il:

Username1
Username2
.
.
.
Username99
Invité:

Christine

Confirmation de:

Si vous avez simplement une liste de fichiers divisés par des lignes, ce n'est pas un fichier CSV - Ceci est juste un fichier texte.

Vous pouvez vérifier si chaque fichier existe et utilise
http://technet.microsoft.com/e ... .aspx
Pour fournir des informations sur la propriété:

$files = Get-Content C:\path\to\list.csv
$fileowners = @()
foreach ($file in $files)
{
if(Test-Path $file -pathType leaf)
{
$owner = (Get-Acl $file).Owner
}
else
{
$owner = "!File not found"
}
$fileowner = @{"File"=$file;"Owner"=$owner}
$fileowners += $fileowner
}
$fileowners | Export-Csv -NoTypeInformation -Path C:\path\to\final.csv

Dominique

Confirmation de:

Vous pouvez utiliser

Select-Object

et
http://technet.microsoft.com/e ... .aspx
pour créer CSV.

Veuillez noter que votre question indique le manque d'en-tête dans le fichier CSV source. J'ajoute à la sortie des titres "Fichier" et "Propriétaire".

Import-Csv input.csv -Header "File"  |
Select-Object File, @{ Name = "Owner"; Expression = { ( Get-Acl( Get-Item $_.File ) ).Owner } } |
Export-Csv -Path output.csv

Pour répondre aux questions, connectez-vous ou registre