La plupart des commandes internes qui acceptent les caractères génériques autorisent également les plages de taille, de date, d'heure, d'exclusion, de description et de propriétaire pour définir plus précisément les fichiers avec lesquels vous souhaitez travailler. TCC examinera les propriétés de chaque fichier pour déterminer si le fichier répond ou non aux critères de plage que vous avez spécifiés.
Une spécification de taille, de date, d'heure ou de plage d'exclusion commence par le caractère de commutation /, suivi d'un crochet gauche [ et un caractère qui spécifie le type de plage : s pour la gamme de tailles, d pour la plage de dates, t pour la plage horaire, ou ! pour la plage d’exclusion. Le s, d, ou t est suivi d'une valeur de début, ainsi que d'une virgule et d'une valeur de fin facultatives. La plage se termine par un crochet droit ]. Par exemple, pour sélectionner des fichiers entre 100 et 200 octets, vous pouvez utiliser la plage /[s100,200 XNUMX].
Une plage de description commence par /I. Voir Description Gammes pour la syntaxe complète.
Si vous utilisez la syntaxe /[=], TCC affichera une boîte de dialogue qui vous permettra de sélectionner les plages souhaitées. Par exemple:
copier /[=] fichier1 fichier2
Les plages Date, Heure, Taille, Propriétaire et Description prennent en charge le ! (PAS) opérateur pour inverser le test.
Vous pouvez inverser le test de plage en faisant précéder l'argument de plage par le ! personnage. Par exemple, pour sélectionner des fichiers de moins de 100 octets ou de plus de 1000 XNUMX octets :
/![s100,1000]
Si vous combinez différents types de plages, un fichier doit satisfaire à toutes les spécifications de plage pour être inclus. Par exemple,
/[d2018-2-8,2019-2-9] /[s1024,2048]
désigne les fichiers modifiés pour la dernière fois entre le 8 février 2018 et le 9 février 2019, qui font également entre 1,024 2,048 et XNUMX XNUMX octets.
Vous ne pouvez pas répéter le même type de plage dans une commande.
Lorsque vous utilisez des spécifications de plage dans une commande, elles doivent immédiatement suivre le nom de la commande, de sorte que tous les commutateurs supplémentaires pour la commande se trouvent après les plages utilisées. Si la plage est placée plus tard dans la commande, elle peut être ignorée ou provoquer une erreur. Contrairement à certains commutateurs de commande qui s'appliquent uniquement à une partie de la ligne de commande, la plage s'applique généralement à tous les noms de fichiers spécifiés pour la commande. Toutes les exceptions sont notées dans les descriptions des commandes individuelles.
Par exemple, pour obtenir un répertoire de tous les *.C fichiers datés du 1er octobre 2018, vous pouvez utiliser cette commande :
rép /[d2018-10-1,+0] *.c
Pour supprimer tous les fichiers de 0 octet sur votre disque, vous pouvez utiliser cette commande :
supprimer /[s0,0] * /s
Et pour copier tous les fichiers d'octets non nuls que vous avez modifiés hier ou aujourd'hui sur votre disquette, vous pouvez utiliser cette commande :
copier /[d-1] /[s1] * a :
Il peut être fastidieux de saisir tous les éléments d’une plage, surtout lorsqu’elle implique plusieurs dates et heures. Dans ce cas, il vous sera peut-être plus facile d'utiliser des alias pour les opérations courantes. Par exemple, si vous souhaitez souvent choisir parmi .LEQUEL fichiers modifiés au cours des trois derniers jours et copiez les fichiers sélectionnés sur un autre lecteur, vous pouvez définir un alias comme celui-ci :
alias workback=`select /[d-2] copie (*.dat) e:\datfiles\`
Pour des exigences plus complexes, vous souhaiterez peut-être utiliser des variables internes (par exemple _DATE or _TEMPS) et fonctions variables intégrées (par exemple @DATE, @TEMPS, @MAKEDATE, @PRENDRE LE TEMPS, @FILEDATE, @FILETIME, ou @EVAL). Ces variables et fonctions vous permettent d'effectuer des calculs arithmétiques et de date / heure. Vous pouvez également définir vos propres fonctions variables, pour effectuer des manipulations plus complexes de manière répétitive.
Consultez les types individuels pour plus de détails sur la spécification des plages :
Les plages peuvent être utilisées avec de nombreuses commandes, notamment ATTRIB, COPY, DEL, DÉCRIRE, DIR, DO, SAUF, TROUVER, POUR, TÊTE, LISTE, MOVE, PDIR, RD, REN, SELECT, QUEUEet TYPE
Les plages ne peuvent pas être utilisées avec la complétion du nom de fichier ou dans les paramètres de nom de fichier pour les fonctions variables, sauf comme décrit sous les fonctions individuelles.
N'utilisez pas de cuisinières avec @déposer listes. Voir @listes de fichiers pour en savoir plus.
Plages de date, d’heure et de taille
Toutes les gammes sont inclusives. Par exemple, une plage de tailles qui sélectionne des fichiers de 10,000 20,000 à 10,000 20,000 octets correspondra aux fichiers qui font exactement 2018 10 ou 27 2010 octets de long, ainsi qu'à toutes les tailles intermédiaires ; une plage de dates qui sélectionne les fichiers modifiés pour la dernière fois entre le 18/30/XNUMX et le XNUMX/XNUMX/XNUMX inclura les fichiers modifiés à chacune de ces dates, ainsi que les deux jours intermédiaires.
Si vous inversez les valeurs de début et de fin de plage TCC reconnaîtra l'inversion et utilisera la deuxième valeur (inférieure) comme point de départ de la plage et la première valeur (supérieure) comme point final. Par exemple, pour sélectionner des fichiers entre 100 et 200 octets, vous pouvez également saisir /[s200,100 XNUMX].