Batch pour copier des fichiers

Fermé
oNe.KnoiZ - 22 sept. 2008 à 13:35
Xavstarblues Messages postés 10019 Date d'inscription mercredi 22 août 2007 Statut Contributeur Dernière intervention 28 décembre 2019 - 24 sept. 2008 à 09:49
Bonjour à tous!

Voila mon problème, je souhaiterais créer un batch pour qu'il copie des fichiers de mon poste vers celui de mes utilisateurs, seulement je ne sais pas quelle variable intégrer pour qui'il passe le nom du user après Doc and Set.

voilà à quoi il ressemble :

for /F %%i IN (liste.txt) DO copy fichier.zip\\%%i\c$\Documents and Settings\???\Application Data\Microsoft..etc..


qqun peut il m'aider?

d'avance merci
A voir également:

25 réponses

sniper2.0 Messages postés 1027 Date d'inscription mercredi 20 août 2008 Statut Membre Dernière intervention 29 avril 2010 29
22 sept. 2008 à 13:45
bonjour
peut etre en utilisan le %1
0
Xavstarblues Messages postés 10019 Date d'inscription mercredi 22 août 2007 Statut Contributeur Dernière intervention 28 décembre 2019 1 851
22 sept. 2008 à 13:46
bonjour
for /F %%i IN (liste.txt) DO copy fichier.zip\\%%i\"%USERPROFILE%\Application Data\Microsoft\"..etc..

devrait marcher

pour info fait un set /?
dans une invite de commande

0
Merci pour ton aide.

Mais peux tu etre un tout petit peu plus explicit stp??
0
Xavstarblues Messages postés 10019 Date d'inscription mercredi 22 août 2007 Statut Contributeur Dernière intervention 28 décembre 2019 1 851
22 sept. 2008 à 13:54
En fait la variable %USERPROFILE% est une variable windows, celle ci en particulier est dépendante de la session utilisateur
Quand c'est TOTO qui se log %USERPROFILE% retourne C:\Documents and settings\TOTO
Quand C'est PAUL qui se log, %USERPROFILE% retourne C:\Documents and settings\PAUL

La commande SET (oui set /? c'est pour l'aide, petite faute de frappe) te retourne les variables windows + les variables que tu as pu créer
ex
SET TEMPORAIRE=g:

puis
dir %TEMPORAIRE%

me donne l'arborescence de g: (ma clé usb par exemple)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Merci beaucoup Xavstarblues, mais j'ai une erreur:

Syntaxe du nom de fichier, de répertoire ou de volume incorrecte.


Merci encore pour tes interventions!!
0
Xavstarblues Messages postés 10019 Date d'inscription mercredi 22 août 2007 Statut Contributeur Dernière intervention 28 décembre 2019 1 851
22 sept. 2008 à 13:58
Copie entierement ta ligne de code en erreur stp
0
Syntaxe du nom de fichier, de répertoire ou de volume incorrecte.
0 fichier(s) copié(s).


Avec ceci :
for /F %%i IN (liste.txt) DO copy fichier.zip\\%%i\"%USERPROFILE%\Application Data\Microsoft\Signatures"



De plus, du fait que je copie un .zip, saurais tu quelle ligne rajouter pour qu'il se décompresse une fois copié?

Merci
0
Xavstarblues Messages postés 10019 Date d'inscription mercredi 22 août 2007 Statut Contributeur Dernière intervention 28 décembre 2019 1 851
22 sept. 2008 à 14:06
1-mets un espace entre fichier.zip et \\%%i....
2-rajoutes un \ apres signature, ca devrait rouler
0
Xavstarblues Messages postés 10019 Date d'inscription mercredi 22 août 2007 Statut Contributeur Dernière intervention 28 décembre 2019 1 851
22 sept. 2008 à 14:09
sinon pour dezipper sous dos, regarde ce sujet qui en parle
http://www.commentcamarche.net/forum/affich 2055594 7 zip pour dos ou le trouver
0
En effet ça roule..

Seulement nouveau problème:

Le chemin réseau n'a pas été trouvé.
0 fichier(s) copié(s).

J'imagine que c'est un autre problème...lol

Merci
0
Xavstarblues Messages postés 10019 Date d'inscription mercredi 22 août 2007 Statut Contributeur Dernière intervention 28 décembre 2019 1 851
22 sept. 2008 à 14:15
dans ton batch

avant ta boucle mets un
ping %%i
pause

est ce que ca ping bien le poste?
0
Oui je ping bien bien l'hote
0
Xavstarblues Messages postés 10019 Date d'inscription mercredi 22 août 2007 Statut Contributeur Dernière intervention 28 décembre 2019 1 851
22 sept. 2008 à 14:31
oups , rajoute le c$ alors....

sinon je pense à un truc , ton script s'execute a partir d'ou?

0
A partir d'un dossier sur mon bureau
0
Xavstarblues Messages postés 10019 Date d'inscription mercredi 22 août 2007 Statut Contributeur Dernière intervention 28 décembre 2019 1 851
22 sept. 2008 à 14:39
arf ca va pas coller alors, le userprofile retourné sera le tien (et pas celui de l'utilisateur sur l'ordi en question)


une facon de faire serait de lacher un fichier.bat dans le %ALLUSER%\ (dans le dossier demarrage) de chaque ordi et c'est ce fichier.bat qui viendrai chercher puis decompresser le .zip dans le %USERPROFILE% et ensuite se supprimerai...

0
ok

merci pour tout
0
Xavstarblues Messages postés 10019 Date d'inscription mercredi 22 août 2007 Statut Contributeur Dernière intervention 28 décembre 2019 1 851
22 sept. 2008 à 14:57
Ok, si tu as un soucis n'hésite pas
0
J'ai trouvé comment faire à partir de mon poste

En remplaçant la variable USERPROFILE par %%i

Ca marche sauf qua maintnant j'ai une erreur:

Erreur d'analyse.

..donc en fait ca amrche pas vraiment.. lol

Merci
0
C'est bon j'ai trouvé et tout fonctionne à merveille!!

Voici la fin de mon script : "\\%%i\c$\Documents and Settings\%%i\Application Data\Microsoft\Signatures\"

J'ai remplacé la variable %USERPROFILE% par %%i ;)

Merci encore Xavstarblues.. tu m'as bien aidé ;)

ciao!!!
0
Xavstarblues Messages postés 10019 Date d'inscription mercredi 22 août 2007 Statut Contributeur Dernière intervention 28 décembre 2019 1 851
22 sept. 2008 à 15:41
%%i correspond au nom de l'ordi et au nom d'utilisateur?? (1 user = 1 poste avec son nom?)

sinon Ok, c cool
0
C'est ça.

Ce script fonctionne à condition que le nom de machine corresponde au nom du user connecté dessus ;)
0