Question Utilisez un fichier csv pour scanner un repertoire

Plus d'informations
il y a 13 ans 3 mois #13229 par rodriguez
Bonjour,

Je souhaite lire le contenu de la 1er colonne d'un fichier CSV séparé par un point virgule.

100814;1 pain.pdf
100929;2 autre.pdf
94476;3 JAMBONNEAU X6 FASSIER.pdf


Chercher dans un répertoire le début des noms des fichiers qui commencent comme le numero de ma premiere colonne de mon fichier csv et quand j'ai trouve le fichier le déplacer dans un autre répertoire et le renommé avec le nom donnée par la deuxieme colonne de mon csv.



Quand je commence à peine à lire mon fichier csv
[code:1]
$IDs = Import-Csv -Path D:\sources\powershell\spars-fic01\chu.csv -Delimiter \";\"
Write-Host $IDs
[/code:1]

j'ai un résulat bizarre:
@{100814=100929; 1 pain.pdf=2 autre.pdf} @{100814=94476; 1 pain.pdf=3 JAMBONNEAU X6 FASSIER.pdf}

ca commence bien :(<br><br>Message édité par: noxyde, à: 6/12/12 13:09

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 13 ans 3 mois #13230 par SiSMik
Salut,

C'est le comportement normal, il prend la prmière ligne de ton CSV comme étant le nom des entêtes.

Rajoutes une première ligne avec le nom des colonnes et hop, réglé :)

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 13 ans 3 mois #13233 par Richard Lazaro
Hello !

Sinon, regarde aussi du côté du paramètre Header, il me semble que ça peut faire l'affaire.

Bien Cordialement,
Richard Lazaro.

@benduru : Si j'ai raison, honte sur toi ;)

Think-MS : (Get-Life).Days | %{ Learn-More }

\\&quot;Problems cannot be solved by the same level of thinking that created them.\\&quot; - Albert Einstein

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 13 ans 3 mois #13236 par rodriguez
Merci pour l'entête.

maintenant que j'ai l'id de ma premiere colonne, je cherche a faire un IF qui trouve le début du nom de fichier se trouvant dans un répertoire..

[code:1]
$IDs = Import-Csv -Path D:\sources\powershell\spars-fic01\chu.csv -delimiter \&quot;;\&quot;
$listfichiers = @(Get-ChildItem d:\sources\powershell\spars-fic01 )
foreach ($ID in $IDs)
{

$tri = $ID.id
if ($listfichiers -eq $tri )
{
je copie $listfichier et rename avec le nom de la colonne 2 du csv

}

[/code:1]

Message édité par: noxyde, à: 6/12/12 15:45<br><br>Message édité par: noxyde, à: 6/12/12 15:45

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 13 ans 3 mois #13237 par SiSMik
Il y a l'opérateur -like qui te permet d'utiliser ? pour un caractère ou * pour n caractères.

[code:1]$IDs = Import-Csv -Path D:\sources\powershell\spars-fic01\chu.csv -delimiter \&quot;;\&quot;
$listfichiers = @(Get-ChildItem d:\sources\powershell\spars-fic01 )
foreach ($ID in $IDs) {
$tri = $ID.id
if ($listfichiers -like \&quot;$tri*\&quot; ) {
je copie $listfichier et rename avec le nom de la colonne 2 du csv
}
}[/code:1]

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 13 ans 3 mois #13239 par rodriguez
Le get-childitem qui me met tout en bloc dans la variable et me lit pas fichier par fichiers.

pour faire le like.

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.058 secondes
Propulsé par Kunena