| Objet : | Exécuter une commande dans le répertoire courant et ses sous-répertoires |
| Format : | GLOBAL [/= /H /I /J /N /P /Q /S[+]n] command |
| command | La commande à exécuter, y compris les paramètres et les commutateurs. |
Utilisation :
GLOBAL exécute la commande d'abord dans le répertoire courant. Ensuite, il fait de chaque sous-répertoire sous le répertoire courant le répertoire de travail courant à son tour, et exécute la commande dans ce répertoire . La commande peut être une commande interne, un alias, une commande externe ou un fichier batch. Lorsque lacommande est exécutée, il peut être nécessaire d'utiliser l'une des fonctions variables qui convertissent un chemin relatif en chemin absolu, par exemple @truename[], @full[], etc. pour s'assurer que les fichiers portant le même nom dans des répertoires différents sont correctement traités .
Si vous ne spécifiez aucun argument, GLOBAL affichera sa boîte de dialogue de commande.
L'exemple ci-dessous copie les fichiers de tous les répertoires du lecteur A dans le répertoire C:\TEMP:
[a:\] global copy * c:\temp
Siun nom de fichier spécifique se trouve dans plus d'un répertoire sur A:, en supposant que COPY soit la commande interne par défaut, le dernier trouvé sera laissé dans C:\TEMP. Le dernier fichier trouvé parmi plusieurs fichiers portant le même nom est imprévisible !
Si vous utilisez l' option /P, GLOBAL demandera chaque sous-répertoire avant d'exécuter la commande. Vous pouvez utiliser cette option si vous souhaitez exécuter unecommande dans la plupart des sous-répertoires du répertoire courant, mais pas dans tous.
Vous pouvez utiliser le regroupement de commandes pour exécuter plusieurs commandes dans chaque sous-répertoire . Par exemple, la commande suivante copie chaque fichier .TXT du répertoire actuel et de tous ses sous-répertoires sur le lecteur D. Elle modifie ensuite l'extension de chaque fichier copié en .SAV:
global (copy *.txt d: & ren *.txt *.sav)
Redirection de sortie
La redirection de sortie par défaut (c'est-à-dire la commandeglobale > nom de fichier) crée un nouveau fichier de sortie nommé nom de fichier pour chaque répertoire visité. Si le nom de fichier ne contient pas de chemin d'accès absolu, ces fichiers seront créés par rapport au répertoire actuellement visité. Si nomfichier contient un chemin d'accès absolu, ce fichier sera écrasé à chaque visite de répertoire, et seules les données du dernier répertoire visité seront conservées.
La manière la plus simple de forcer un seul fichier cible est de mettre toute la ligne de commande entre parenthèses, par exemple, :
(global command) > filename
Options :
| /H | Force GLOBAL à rechercher des répertoires cachés. Si vous n'utilisez pas cette option, les répertoires cachés et leurs sous-répertoires sont ignorés sans indication d'erreur. |
Sans cette option, si GLOBAL n'est pas en mesure de passer à un répertoire (par exemple, si l'utilisateur n'a pas les droits d'accès), GLOBAL s'arrêtera avec un message d'erreur. Avec cette option, GLOBAL ignorera ce répertoire, ainsi que tous ses sous-répertoires, et continuera dans le prochain répertoire accessible.
| /P | Force GLOBAL à demander le nom de chaque répertoire avant d'exécuter une commande dans ce répertoire. Vos options à l'invite sont expliquées en détail dans Page and File Prompts. |
| /S | GLOBAL limite la récursivité des sous-répertoires au nombre spécifié. Par exemple, si vous avez une arborescence de répertoires "a\b\c\d\e", /S2 n'ira que dans les répertoires "a", "b" et "c". |
Si vous spécifiez un + suivi d 'un nombre après le /S, GLOBAL n'exécutera pas la commande avant d'avoir atteint cette profondeur dans l'arborescence des sous-répertoires . Par exemple, si vous avez une arborescence de répertoires \a\b\c\d\e, /S+2 n'exécutera pas de commande dans \a ou \a\b.