Copier un fichier

Commande :

Copier/ [Fichier source], [Fichier destination] {/Progression:[Variable1] /Octets:[Variable2] /OctetsParSec:[Variable3]}

Aperçu visuel :


Fonctionnalité :

Cette commande permet de copier un fichier. Cette commande embarque des fonctionnalités de statistiques (Progression en %, Nombre d'octets écrits, et nombre d'octets écrit par secondes)


Paramètres disponibles :

  • Définir la variable qui contiendra la progression en %

    /PROGRESSION:variable1

  • Définir la variable qui contiendra le nombre d'octets écrits

    /OCTETS:variable2

  • Définir la variable qui contiendra le nombre d'octets écrits par secondes

    /OCTETSPARSEC:variable3


Exemples :

Exemple 1

Copie simple dans le dossier courant

Copier/ Fichier1.cpc, fichier2.cpc

Exemple 2

Copie d'un fichier d'un répertoire dans un autre répertoire

Copier/ monDossier/fichier1.txt, monAutreDossier/fichier2.log

Exemple 3

Copier un gros fichier dans un autre thread et afficher a la console le pourcentage.

CMD/ /Thead Copier/ fichier1.mp4, fichier2.mp4 /Progression:Valeur1

Et taper à la console

txt/ %Valeur1%

Exemple 4

Copier un gros fichier dans un autre thread et afficher les statistiques à l'écran
a ecrire dans un fichier .CPC

// Lancer la copie dans un autre thread
cmd/ /thread Copier/ fichier1.mp4, fichier2.mp4 /Progression:Valeur1 /Octets:Valeur2 /OctetsParSec:Valeur3

// Pause 1sec pour attendre que le thread crée les variables.
ccp/ /pause:1000
:debut:

// Afficher la progression en cours
txt/ Progression:%Valeur1%\% Ecrits:%Valeur2% mo Vitesse:%Valeur3%/s ko/s

// Si on atteint 100%, on quitte le programme
si/ "%Valeur1%" == "100" alors:
    txt/ Copie terminee!
    stop/
fin/ si

aller/ debut

Exemple 5

IDEM mais plus perfectionné!

// Lancer l'optimiseur CpcdosC+
CCP/ /Optimisation = 1

// Lancer la copie dans un autre thread
cmd/ /thread Copier/ fichier1.mp4, fichier2.mp4 /Progression:Valeur1 /Octets:Valeur2 /OctetsParSec:Valeur3

// Pause 1sec pour attendre que le thread crée les variables.
ccp/ /pause:1000

:debut:
// Convertir le nombre d'octets copies en mega-octets
Fix/ Ecrit = /C((%Valeur2% / 1024) / 1024)

// Arrondir en entier (integer)
Fix/ Ecrit = /f:CPC.ENTIER(%Ecrit%)

// Convertir la vitesse en kilo-octets
Fix/ Vitesse = /c(%Valeur3% / 1024)

// Recuperer la position Y
@#PositionY Pos/ y

// Monter d'une ligne
fix/ PositionY = /c(%PositionY - 1)

// Repositionner Y
pos/ y:%PositionY%

// Afficher la progression en cours
txt/ Progression:%Valeur1%\% Ecrits:%Valeur2% mo Vitesse:%Valeur3%/s ko/s

// Si on atteint 100%, on quitte le programme
si/ "%Valeur1%" == "100" alors:
    txt/ Copie terminee!
    stop/
fin/ si

// Recommencer au label 'debut'
aller/ debut