1 votes

Comment ouvrir des fichiers dans une certaine plage à partir de l'invite de commande dans Windows 10

Je veux utiliser l'invite de commande de Windows 10 pour ouvrir les fichiers dont les noms sont dans une certaine plage. Les fichiers que je veux ouvrir ont des noms comme AF87314.corr.fits (certains fichiers peuvent avoir l'extension .corr.fits.discarded) et, à titre d'exemple, supposons que je veuille ouvrir les fichiers à partir de AF87314 まで AF87320 . Sous Linux (Ubuntu), je peux utiliser

ds9 AF873{14..20}.corr.fits

(ds9 est le programme que j'utilise pour ouvrir ces images). Sous Windows, je ne peux pas. Existe-t-il une solution à mon problème ?

Merci d'avance à tous.

EDIT : Merci Ian C. pour avoir donné une solution possible, mais ce n'est pas celle que je recherche puisque chaque image s'ouvre dans une nouvelle fenêtre du programme. J'ai besoin de passer tous les noms de fichiers à la commande en même temps, de sorte qu'une seule fenêtre soit ouverte à la fois et que je puisse travailler sur toutes les images en même temps.

EDIT2 : Merci LPChip aussi, mais quelque chose ne fonctionne pas en faisant ce que vous avez suggéré. En utilisant par exemple ds9 AF873{30..35}.corr.fits le programme donne une erreur disant que le fichier [full-path-to-file]/AF873 n'a pas pu être ouvert (veuillez noter que la dernière partie du nom de fichier est manquante). Cependant, je suis dans le bon dossier, je peux ouvrir n'importe quel fichier avec la commande ds9 AF87330.corr.fits .

EDIT3 : Je pense avoir trouvé une solution possible, qui est d'utiliser findstr . Plus tard, quand je serai à la maison, je le testerai un peu plus, car il utilise des expressions rationnelles et je ne suis pas familier avec elles.

0voto

Altered-Ego Points 242

Vous pouvez utiliser un boucle for .

FOR /l %K in (14,1,20) DO DS9.EXE AF873%K.corr.fits

Points à noter

  • Le %K est votre numéro de variable qui change avec chaque fichier.
  • Parce que /l est un compteur, cela ne fonctionne qu'avec les chiffres, pas avec les autres caractères.
  • Pour des raisons de simplicité, je ne fais pas référence aux chemins d'accès aux fichiers.
  • /l n'utilise pas de zéros non significatifs. Si nous prenons votre exemple et que nous voulions commencer à 08 au lieu de 14
    • Vous ne pouvez pas utiliser in (8,1,20) le résultat serait AF8738 , AF8739 , AF87310 , AF87311 , ...
    • Vous devez utiliser in (308,1,20) ... AF87%K.corr.fits

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X