2009-11-01 8 views
1

Lorsque je copie des fichiers sur un chemin réseau avec la commande xcopy, je reçois de nouveaux lecteurs virtuels sur mon ordinateur. Le problème est que je fais cela dans un script batch qui s'exécute dans le planificateur donc j'y arrive beaucoup de lecteurs au même endroit. Comment puis-je copier des fichiers sur un réseau sans sortir de nouveaux disques sur le PC ou simplement les retirer? ?xcopy avec unc path ajoute des lecteurs réseau virtuels

Merci.

Répondre

3

Attendez une minute. Vous utilisez pushd. pushd, comme les États documentation:

Si les extensions de commandes sont activées, la commande PUSHD accepte les chemins de réseau en plus de la lettre de lecteur normal et le chemin. Si un chemin réseau est spécifié, PUSHD va créer une lettre de lecteur temporaire qui pointe vers que spécifié ressources réseau et puis changer le lecteur et le répertoire , en utilisant la lettre de lecteur nouvellement défini. Les lettres de lecteur temporaires sont attribuées à partir de Z: on down, en utilisant la première lettre de lecteur inutilisée trouvée.

Bien que cela soit parfaitement bien à utiliser, vous ne devriez jamais appeler pushd sans popd appropriée par la suite.

Ainsi, au lieu de seulement

pushd \\somepath\etc 
xcopy "%mycopyposition%*.exe" 

vous ajoutez une ligne

popd 

qui désallouer à nouveau la lettre de lecteur temporaire.

0

Cela ressemble à la commande que vous utilisez pour appeler xcopy. Pouvons-nous voir cela?

+0

je l'appelle via un fichier batch d'abord je ne pushd \\ somepath \ etc alors je ne xcopy "% mycopyposition% \ *. Exe" –

0

la commande net est votre démon (comme un démon que vous pouvez obtenir sur Windows). Pour supprimer un lecteur réseau, vous pouvez consulter:

net use /? 
+0

Est-il possible d'une certaine manière de ne pas obtenir tout ce que les lecteurs réseau via les commandes je cours pour les obtenir? j'utilise pushd et xcopy. Merci –

Questions connexes