Copier un fichier et renommer avec PowerShell

L’objectif principal de cet article est de démontrer l’opération d’E/S la plus basique, copier un fichier puis le coller dans un autre répertoire ou emplacement avec un nom différent.
PowerShell Copier Fichier et Renommer
Lors de la manipulation de fichiers CSV, il peut être nécessaire de copier un fichier CSV spécifique et de le coller ailleurs avec son nom de fichier extrait du CSV.
Considérons le CSV suivant :
iid firstname lastname profession oldfilepath newfilename
-- --------- -------- ---------- ----------- -----------
100 Annecorinne Fitzsimmons doctor D:\\old.csv new2.csv
101 Mallory Dunkin firefighter D:\\old.csv new3.csv
102 Carlie Torray firefighter D:\\old.csv new4.csv
103 Marleah Boycey worker D:\\old.csv new5.csv
104 Lusa Corabella worker D:\\old.csv new6.csv
105 Shandie Chesna worker D:\\old.csv new7.csv
106 Melisent Ochs doctor D:\\old.csv new8.csv
107 Cathie Hurley firefighter D:\\old.csv new9.csv
108 Kerrin Regan doctor D:\\old.csv new10.csv
109 Alie Lewes police officer D:\\old.csv new11.csv
110 Jsandye Gemini police officer D:\\old.csv new12.csv
111 Marguerite Myrilla police officer D:\\old.csv new13.csv
112 Florie Dichy developer D:\\old.csv new14.csv
113 Krystle Gaulin doctor D:\\old.csv new15.csv
114 Odessa Nerita developer D:\\old.csv new16.csv
Nous devons maintenant copier ce CSV et le coller dans un autre répertoire avec un nom personnalisé, qui provient d’une colonne du fichier CSV. Dans ce cas, la colonne s’appelle newfilename
.
Considérons le code suivant :
$csv = "D:\\old.csv"
Import-Csv $csv | % { Write-Host "Copying $($_.oldfilepath) to D:\TEST\$($_.newfilename)..." | Copy-Item $_.oldfilepath -Destination "D:\TEST\$($_.newfilename)" }
Après cela, nous pouvons vérifier que le fichier a été copié en utilisant le suivant :
> .\script.ps1
> ls D://TEST
Directory: D:\TEST
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a--- 11/1/2022 10:27 PM 861 new10.csv
-a--- 11/1/2022 10:27 PM 861 new11.csv
-a--- 11/1/2022 10:27 PM 861 new12.csv
-a--- 11/1/2022 10:27 PM 861 new13.csv
-a--- 11/1/2022 10:27 PM 861 new14.csv
-a--- 11/1/2022 10:27 PM 861 new15.csv
-a--- 11/1/2022 10:27 PM 861 new16.csv
-a--- 11/1/2022 10:27 PM 861 new2.csv
-a--- 11/1/2022 10:27 PM 861 new3.csv
-a--- 11/1/2022 10:27 PM 861 new4.csv
-a--- 11/1/2022 10:27 PM 861 new5.csv
-a--- 11/1/2022 10:27 PM 861 new6.csv
-a--- 11/1/2022 10:27 PM 861 new7.csv
-a--- 11/1/2022 10:27 PM 861 new8.csv
-a--- 11/1/2022 10:27 PM 861 new9.csv
En utilisant le code ci-dessus, nous pouvons extraire le fichier à copier d’une des colonnes et le nom du nouveau fichier à enregistrer.
Le flux général du programme est le suivant :
- Le chemin du fichier CSV pour extraire le chemin et le nom de fichier est stocké dans une variable nommée
csv
. Le symbole$
est principalement utilisé pour déclarer et accéder/réinitialiser des variables en PowerShell. - La commande
Import-csv
extrait les données du fichier CSV. - Après que les données pertinentes ont été extraites, elles sont envoyées à la commande suivante en utilisant l’opérateur
|
. - L’opérateur
%
(un alias pour la boucleforeach
) est utilisé pour extraire les données des colonnesoldfilepath de manière itérative
etnewfilename
, qui sont ensuite passées à la commandeCopy-Item
pour copier le fichier de la source donnée à la destination (non spécifiée dans le CSV dans notre cas).
Hello! I am Salman Bin Mehmood(Baum), a software developer and I help organizations, address complex problems. My expertise lies within back-end, data science and machine learning. I am a lifelong learner, currently working on metaverse, and enrolled in a course building an AI application with python. I love solving problems and developing bug-free software for people. I write content related to python and hot Technologies.
LinkedInArticle connexe - PowerShell File
- Comment créer un fichier texte en utilisant Windows PowerShell
- Comment débloquer des fichiers en utilisant PowerShell
- Comment obtenir la taille d'un fichier en Ko en utilisant PowerShell
- Comment obtenir la version du fichier dans PowerShell
- Comment stocker le contenu d'un fichier texte dans une variable en utilisant PowerShell
- Comment télécharger des fichiers avec FTP dans PowerShell