J'ai tiré du code censé supprimer des fichiers qui n'ont pas de noms commençant par la valeur de Ceci fonctionne bien. Cependant, lorsque je mets ce code dans un script plus grand, régler Voici le script que je veux l'utiliser. Le J'ai également essayé "paresseux" expansion retardée en remplaçant Quelqu'un a une idée de ce qui cause cela? p> p> Garder code>. Je réussis cela en mettant le nom du fichier dans
tmpl1 code> et
tmpl2 code> en substituant la valeur de
garder code> avec rien. Si
tmpl1 code> et
tmpl2 code> est différent, je garde le fichier, sinon il est supprimé.
tmpl2 code> cesse soudainement de fonctionner. Au lieu de (une partie de) le nom de fichier
tmpl2 code> est maintenant littéralement contenant littéralement
tmpl1: = code>. P>
pour code> -Loops ne sont que pour passer via un arborescence de répertoire. La fonction principale du script est toujours la même. P>
SET TMPL2 =! TMPL1:% Garder% =! Code> avec
Set d'appel TMPL2 = %% TMPL1:% Garder% = %% Code>. Cela fonctionne également dans le petit script, mais quand je l'applique au gros, je reçois une erreur comme
"=%" ne peut pas être traitée syntaxiquement dans cet endroit code> (c'est une traduction gratuite depuis ma console est en allemand). P>
3 Réponses :
set tmpL2=!tmpL1:=!
Bon appel! Avez-vous une idée de la façon dont je peux me contenter de ce problème?
appel est le mot opératoire. Appelez un sous-programme. substitut là-bas (comme tmpl1 code> et
Garder code> sera alors défini) et attribuer à une variable supplémentaire, puis utilisez cette variable supplémentaire comme
! var! code>
Je ne peux pas sembler avoir ceci pour travailler. J'ai créé un sous-programme avec cette commande: Set d'appel% ~ 3 = %%% ~ 1:% ~ 2 = %% code>. Le troisième paramètre a alors la valeur du premier paramètre, mais rien n'est substitué.
vous pouvez essayer de changer cette ligne avec p>
SET TMPL2 =! TMPL1:% Garder% =! code>
Collé ce droit et ça marche comme un charme. Merci!
au lieu de: écrire: p> puis au bas de votre script, placez ceci: p> < Pré> xxx pré> p>