J'ai un script robocopy pour sauvegarder nos référentiels Kiln qui fonctionne tous les soirs, qui ressemble à ceci:
robocopy "$liveRepoLocation" "$cloneRepoLocation" /MIR /MT /W:3 /R:100 /LOG:"$backupLogLocation\BackupKiln.txt" /NFL /NDL /NP
Dans la sortie, il y a une tonne de lignes qui contiennent des "fichiers supplémentaires", comme ceci:
*EXTRA File 153 E:\Kiln Backup\elasticsearch\data\elasticsearch-kiln\nodes\0\indices\kiln-2\0\index\_yxe.fdt
*EXTRA File 12 E:\Kiln Backup\elasticsearch\data\elasticsearch-kiln\nodes\0\indices\kiln-2\0\index\_yxe.fdx
*EXTRA File 128 E:\Kiln Backup\elasticsearch\data\elasticsearch-kiln\nodes\0\indices\kiln-2\0\index\_yxe.fnm
*EXTRA File 363 E:\Kiln Backup\elasticsearch\data\elasticsearch-kiln\nodes\0\indices\kiln-2\0\index\_yxe.frq
*EXTRA File 13 E:\Kiln Backup\elasticsearch\data\elasticsearch-kiln\nodes\0\indices\kiln-2\0\index\_yxe.nrm
De plus, il y a alors des centaines de lignes en bas qui ne contiennent que "100%", comme ceci:
100%
100%
100%
100%
100%
100%
100%
En plus de rendre les fichiers journaux énormes (il y a beaucoup de dossiers / fichiers dans les dépôts Kiln), il est ennuyeux de parcourir les journaux de temps en temps pour voir si tout fonctionnait bien.
- Comment puis-je empêcher l'apparition de "Fichiers supplémentaires" dans le journal? (modifier: toutes les lignes, pas seulement le texte car / NC s'arrêtera)
- Comment puis-je empêcher ces ridicules lignes "100%" d'apparaître dans le journal?
J'ai essayé toutes les combinaisons de commutateurs auxquelles je peux penser (les commutateurs actuels sont répertoriés ci-dessus dans la commande), mais aucun ne semble les cacher!
Réponses:
Je viens de remarquer qu'il vous manque un / NC là-bas.
/ NC: aucune classe - ne pas enregistrer les classes de fichiers.
Les fichiers de classe sont ... Que veut dire robocopy par peaufiné, solitaire et extra?
J'essaierais donc: robocopy "$ liveRepoLocation" "$ cloneRepoLocation" / MIR / MT / W: 3 / R: 100 / NP /LOG:"$backupLogLocation\BackupKiln.txt "/ NC
Modifier 1
Ma faute. Je n'ai pas vu que vous aviez déjà mentionné d'essayer / NC
J'ai testé ici. Il semble que l'option / MIR ignore les options de journalisation. De plus, / MT le gâche, en ajoutant 100%.
La seule façon de travailler était
* Il fonctionne en fait avec / MIR. Mais vous devez spécifier / NFL et /NDL.* Je ne sais pas si cela vous convient.
Si vous essayez / MT, il montrera toujours le 100% idiot
Modifier 2
Je sais que la question concernait Robocopy, mais je pense que vous devriez essayer RichCopy http://technet.microsoft.com/en-us/magazine/2009.04.utilityspotlight.aspx
Voici la ligne de commande:
Il démarre l'interface graphique de RichCopy et se ferme une fois terminé.
Et voici le journal
la source
L'
/XX
option exclut les fichiers supplémentaires de la liste. Perversement, cette option est répertoriée dans lesFile Selection
options, nonLogging
. C'est l'opposé de l'/X
option d'enregistrement, je suppose.la source
Je pense que cela peut fonctionner:
Il suffit donc de diriger la sortie vers "find" avec le / V pour exclure les lignes qui contiennent le texte spécifié "* Extra File".
la source
que diriez-vous d'utiliser les commutateurs
vous avez donc
Remarques: si vous l'utilisez dans un script PowerShell, comme vous semblez l'être, vous devez utiliser findstr au lieu de rechercher comme vous le pouvez dans un fichier .bat ou .cmd. Notez que / L et / C: ne sont pas pris en charge par find mais pour la commande find ils ne sont pas requis.
la source