texte ou séquence du fichier texte en utilisant batch?

2

J'ai le fichier appelé file.txtqui contient,

American 9876543 [email protected]
Australian 7674840 [email protected]
Indian 9364906 [email protected]
Chinese 6383936 [email protected]
Japanese 9363839 [email protected]

Maintenant, je veux filtrer trois choses de ce fichier comme sortie dans un autre fichier texte.

Par exemple,

sortie file1.txt- doit contenir tous les identifiants de messagerie

[email protected]
[email protected]
[email protected]
[email protected]
[email protected]

sortie file2.txt- doit contenir tous les nombres

9876543
7674840
9364906
6383936
9363839

sortie file3.txt- doit contenir uniquement le mot de séquence commençant par A,

par exemple,

American
Australian

Pour cela, j'ai essayé d'utiliser la commande FC et les commandes Findstr. Et je n'ai aucune idée de comment les utiliser correctement.

S'il vous plaît aider .. Merci à l'avance ..

Philippe
la source

Réponses:

3

Je veux filtrer trois choses de ce fichier comme sortie dans un autre fichier texte

Vous n'avez pas besoin fcou findstrfaire ceci. Une simple for /fcommande suffira.

Utilisez le fichier de commandes suivant (test.cmd):

@echo off
setlocal enabledelayedexpansion
for /f "usebackq tokens=1-3" %%a in (`type file.txt`) do (
  echo %%a >> file3.txt
  echo %%b >> file2.txt
  echo %%c >> file1.txt
  )
endlocal

Exemple d'utilisation:

> type file.txt
American 9876543 [email protected]
Australian 7674840 [email protected]
Indian 9364906 [email protected]
Chinese 6383936 [email protected]
Japanese 9363839 [email protected]

> test

> type file1.txt
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]

> type file2.txt
9876543
7674840
9364906
6383936
9363839

> type file3.txt
American
Australian
Indian
Chinese
Japanese

Lectures complémentaires

DavidPostill
la source