Question : Avoir besoin d'un dossier de batte pour copier les dossiers spécifiques à partir d'un annuaire autonumbered

Hello.

I ont un processus qui crée un annuaire numéroté dans le chemin « C:\CSIRP\Storage\ ».  Le nombre est produit automatiquement et est différent chaque jour.  Par exemple le chemin d'aujourd'hui est « C:\CSIRP\Storage\68 ».  À l'intérieur de cet annuaire il y a approximativement 100 dossiers.  J'ai besoin d'un fichier séquentiel qui regardera le répertoire racine, « C:\CSIRP\Storage\ », trouve le sous-répertoire numéroté le plus élevé, aujourd'hui aurai 66 ans demain aurai 67 ans.  Alors une fois que je trouve l'annuaire correct, je dois copier 4 dossiers au chemin » \ \ servername \ sharename ".  Les 4 dossiers que j'ai besoin sont toujours appelés : le

** CF0364, ** DMCIF, ** LMCIF, et ** NMCIF

Where ** est le même que le nombre de l'annuaire.  Le groupe sera programmé pour courir des périodes multiples quotidiennement, ainsi avant lui copie les dossiers, il devrait examiner « \ \ chemin de servername \ sharename » pour assurer l'existence des dossiers, et avorte si les dossiers existent déjà (aucun besoin de les copier deux fois.) aide du

Please si vous can.
class= de

Réponse : Avoir besoin d'un dossier de batte pour copier les dossiers spécifiques à partir d'un annuaire autonumbered

Voici une version légèrement plus compacte, celle vérifie également les noms réels des subfolders recherchant celui avec la valeur la plus élevée.  Vous pouvez vouloir coller avec l'approche courante mais sinon c'est une option.  Elle emploie également deux ou trois commandes (CD) de PUSHD de réduire le wordiness du code.

~bp
1 :
2 :
3 :
4 :
5 :
6 :
7 :
8 :
9 :
10 :
11 :
12 :
13 :
14 :
15 :
16 :
@echo au loin
EnableDelayedExpansion setlocal
placer BaseDir= C:\CSIRP\Storage
placer \ de DestDir= \ servername \ sharename
placer NewDir=0
pushd « %BaseDir% »
Le rem pour /F le « tokens=* » %%A dedans (« dir /ad /od /tc /b ") placent NewDir=%%A
pour /D %%A dedans (*) faire (
  si %%A GTR ! NewDir ! placer NewDir=%%A
)
pushd « %BaseDir% \ %NewDir% »
pour %%A dedans (" ? ? CF0364 » » ? ? DMCIF " « ? ? LMCIF » » ? ? NMCIF ") font (
  sinon existent la copie « %%~nA » « %DestDir% » de « %DestDir% \ %%~nA »
)
popd
popd
Autres solutions  
  •  MS Excel 2007 et pdf - l'exportation vers le pdf prend de longues heures !
  •  Dans le Perl, comment j'ajoute une valeur à la liste, puis le contrôle pour voir si la valeur existent avant d'ajouter une nouvelle valeur
  •  Comment fais j'initialiser de la HP BL460c G6 de san et de la HP XP 240000
  •  Comment fais j'employer une clef de permis de volume sur un ordinateur de HP avec du CD de restauration
  •  Emplacement primaire de deux SCCM dans l'annuaire actif
  •  L'initiateur et la HP D2D de l'iSCSI R2 du serveur 2008 de Windows GERCENT l'issue
  •  Stocker le dossier dans le mysql using connector.net et le champ de goutte
  •  Carte vidéo d'USB - bit 32 sur le matériel travaillant au niveau du bit 64 ?
  •  asp.net que j'essaye de convertir une forme de HTML en forme d'aspx ou ? ce qui jamais. Aide du besoin sur la façon dont à à elle.
  •  Winzip 12 issues de secours du travail ?
  •  
    programming4us programming4us