PowerShell avec Robocopy et passage d'arguments

Rohan Timalsina 16 février 2024
PowerShell avec Robocopy et passage d'arguments

Vous pouvez utiliser plusieurs outils pour copier des fichiers et des répertoires dans PowerShell. Robocopy est un utilitaire de ligne de commande populaire dans Windows pour copier des données de fichiers d’un emplacement à un autre.

C’est une commande puissante qui peut copier un grand volume de données de fichiers. Ce tutoriel vous apprendra à utiliser robocopy dans PowerShell.

Utilisez la commande robocopy pour copier des fichiers dans PowerShell

La syntaxe générale de la commande robocopy est :

robocopy <source> <destination> [<file>] [<options>]

Ce qui suit est un exemple simple de commande robocopy.

robocopy C:\New C:\pc car.png /njh /njs

Il copie un fichier car.png du répertoire C:\New vers le répertoire C:\pc. L’option /njh masque l’en-tête du travail et l’option /njs masque le résumé du travail.

Production:

	                   1	C:\New\
	    New File  		    3465	car.png
 98%
100%

Pour plus d’informations sur les options robocopy, lisez cet article.

Voyons un autre exemple de commande robocopy. Les variables suivantes stockent la valeur des arguments robocopy.

$source = "C:\New\complex"
$destination = "C:\pc\computing"
$robocopyOptions = "/njh"
$file = "report.docx"

Cette commande copie un fichier report.docs du répertoire source C:\New\complex vers le répertoire destination C:\pc\computing.

robocopy $source $destination $file $robocopyOptions

Production:

	                   1	C:\New\complex\
	    New File  		   1.5 m	report.docx
 15%
 31%
 47%
 63%
 79%
 95%
100%

------------------------------------------------------------------------------

               Total    Copied   Skipped  Mismatch    FAILED    Extras
    Dirs :         1         0         1         0         0         0
   Files :         1         1         0         0         0         0
   Bytes :    1.56 m    1.56 m         0         0         0         0
   Times :   0:00:00   0:00:00                       0:00:00   0:00:00


   Speed :           41,05,59,250 Bytes/sec.
   Speed :             23,492.389 MegaBytes/min.
   Ended : 21 May 2022 12:53:25

La commande ci-dessus ne fonctionnera pas si vous stockez plusieurs options dans la variable $robocopyOptions.

$robocopyOptions="/njh /njs"

Vous devez diviser les chaînes dans la commande comme ceci.

robocopy $source $destination $file $robocopyOptions.split(' ')

Production:

	                   1	C:\New\complex\
	    New File  		   1.5 m	report.docx
 15%
 31%
 47%
 63%
 79%
 95%
100%

Robocopy est un outil utile pour copier un grand volume de fichiers. C’est un excellent choix si vous recherchez un moyen simple de copier ou de déplacer des fichiers dans PowerShell.

Rohan Timalsina avatar Rohan Timalsina avatar

Rohan is a learner, problem solver, and web developer. He loves to write and share his understanding.

LinkedIn Website