J'ai quelques fichiers de taille fixe de la ligne, taille de champ fixe que j'ai besoin d'extraire des informations de. Nornmallalement, j'utiliserais Cygwin ( J'ai besoin d'extraire les 10 caractères à compensation 7 et 4 caractères à la décalage 22 (basé sur zéro) et à les émettre à un fichier mais avec une légère torsion: p> Par exemple: p> devrait produire ( Cut Code> et al), mais ce n'est pas une option dans ce cas en raison de politiques de gestion (bonehed) que je ne peux pas changer. Il a em> doit être effectué à l'aide d'outils XP standard inclus avec Windows.
indique la fin de la ligne): p>
-15.22,ABCD<
122.00,XX<
9,YYY<
3 Réponses :
Ce site contient des indications sur la manière d'extraire des sous-chaînes dans cmd.exe: http: // www. decipes.com/dttipstringmanipulation.php
Ce site suggère que vous pouvez utiliser P>
%varname:~2,3%
Merci, @daren. Il s'avère que VBScript sera beaucoup plus facile. +1 pour la réponse quand même.
Ouais. J'éviterais cmd.exe dans la mesure du possible (j'ai été tenté de voir si je pouvais poster une source, mais alors ... c'est tout simplement horrible!)
Daren: Hé, n'insultez pas langues avec la syntaxe inconnue. Vous pouvez faire de grandes choses dans les fichiers par lots et pour certaines personnes, c'est en fait amusant (admis, ce sont généralement les mêmes personnes qui ravissent de résoudre des problèmes de cerveau ou de snusp).
@Johannes: une langue peut être à la fois utile (pour faire avancer les choses) et gourmandement en même temps. Ce sont des concepts orthogonaux. S'amuser ... il y a beaucoup de gens vraiment étranges là-bas (environ un sur vingt).
Si vous travaillez avec des fenêtres modernes, vous n'êtes pas limité à des commandes CMD.EXE Nativement, vous pouvez utiliser VBScript. Si votre stratégie ne doit pas utiliser VBScript, je suppose que vous devinez Sack votre gestion :) Fondamentalement, pour "couper" des caractères d'une chaîne, vous utilisez la fonction moyenne (). S'il vous plaît regarder le Documentation VBScript A > Pour en savoir plus. P> Enregistrez ce qui précède comme test.vbs et, sur la ligne de commande, do p> bien sûr, "Substring" peut également être fait avec pure cmd.exe, mais je laisserai cela à d'autres d'autres pour vous guider. P> mise à jour par pax: em> basé sur cette réponse, je suis arrivé avec ce qui suit. sera un bon départ: p> Ceci correspond à toutes les exigences que nous avons eues. Nous pouvons rendre les décalages et les longueurs dans des arguments de ligne de commande plus tard. P> Mise à jour finale. EM> P> P> P>
Malheureusement, pas ma gestion, c'était pour un ami. Mais VBScript est un bon point, ils utilisent XP. Peut-être que je devrais clarifier cela.
Merci, @ghostdog, très obligé. J'ai ajouté le code que j'envoie depuis que cela gère également les autres exigences. +1 et accepter. À votre santé.
Voici un petit script (a besoin d'être dans un BAT / fichier CMD) sur ce que Daren expansion Thomas suggéré:
@echo off setlocal set key=HKCU\Software\Microsoft\Windows\CurrentVersion\Ext\Stats\{D27CDB6E-AE6D-11CF-96B8-444553540000}\iexplore\AllowedDomains echo. echo Liste der fuer Flash im IE zugelassenen Domaenen: echo ================================================= for /f "usebackq tokens=11 delims=\" %%l in (`call reg query "%key%" /s`) do echo. %%l echo. endlocal
Connexes: Émulguer UNIX 'CUT' à l'aide de commandes de ligne de commande Windows / standard