[DOS] double redirection
santiago69
Messages postés
485
Statut
Membre
-
santiago69 Messages postés 485 Statut Membre -
santiago69 Messages postés 485 Statut Membre -
Salut a tous,
J'aimerais rediriger la sortie d'une commande vers 2 emplacements differents (voire n emplacements).
Existe-t-il un truc pour cela ?
Une syntaxe du genre :
Ou l'integralite du contenu du repertoire serait envoyee a la fois vers fichier.txt et vers la fonction find.
Merci d'avance
Santiago
J'aimerais rediriger la sortie d'une commande vers 2 emplacements differents (voire n emplacements).
Existe-t-il un truc pour cela ?
Une syntaxe du genre :
dir C:\WINDOWS\system32 > fichier.txt > find "mp3"
Ou l'integralite du contenu du repertoire serait envoyee a la fois vers fichier.txt et vers la fonction find.
Merci d'avance
Santiago
6 réponses
Bonjour,
Je ne suis pas trop calé dans la matière mais je ne vois que:
dir C:\WINDOWS\system32 > fichier.txt
find "mp3" < fichier.txt
Avec un peu de chance ça marche,
M.
Je ne suis pas trop calé dans la matière mais je ne vois que:
dir C:\WINDOWS\system32 > fichier.txt
find "mp3" < fichier.txt
Avec un peu de chance ça marche,
M.
Bonsoir,
Tu veux localiser quoi exactement avec la commande FIND ? Tous les fichiers mp3 contenus dans le répertoire C:\WINDOWS\system32 ?
Tu veux localiser quoi exactement avec la commande FIND ? Tous les fichiers mp3 contenus dans le répertoire C:\WINDOWS\system32 ?
J'imagine que c'est un pipe dont tu as besoin :
ou utilise tee
J'utilise le chemin complet vers find.exe car je dispose d'un find sous cygwin dans mon PATH
De toute manière, il vaut mieux utiliser un outil unix-like tel grep au lieu des outols primitifs de Win$
[F:\downloads]dir | c:\WINDOWS\system32\find.exe "zip" 25/11/2006 5:46 256.259 2m30.zip 2/11/2007 0:21 1.670.453 devcpp-4.9.9.2-src.zip 13/11/2006 20:24 703.862 FB-manual-chm-17.oct.2006.zip 15/10/2007 1:22 15.999 fr_BE.zip 15/10/2007 1:23 325.683 fr_FR.zip 3/11/2006 5:00 277.469 hackcrck.zip 2/03/2008 8:17 1.536.204 putty.zip 6/04/2008 21:08 113.325.422 Wireless_Intel_v11.1.1.11_XP_Vista.zip
ou utilise tee
[F:\downloads]dir |tee brol | c:\WINDOWS\system32\find.exe "zip"
25/11/2006 5:46 256.259 2m30.zip
2/11/2007 0:21 1.670.453 devcpp-4.9.9.2-src.zip
13/11/2006 20:24 703.862 FB-manual-chm-17.oct.2006.zip
15/10/2007 1:22 15.999 fr_BE.zip
15/10/2007 1:23 325.683 fr_FR.zip
3/11/2006 5:00 277.469 hackcrck.zip
2/03/2008 8:17 1.536.204 putty.zip
6/04/2008 21:08 113.325.422 Wireless_Intel_v11.1.1.11_XP_Vista.zip
[F:\downloads]dir brol
Volume in drive F is HDA6 Serial number is 5CDE:B9DC
Directory of F:\downloads\brol
8/04/2008 20:41 2.947 brol
2.947 bytes in 1 file and 0 dirs 16.384 bytes allocated
10.809.163.776 bytes free
J'utilise le chemin complet vers find.exe car je dispose d'un find sous cygwin dans mon PATH
De toute manière, il vaut mieux utiliser un outil unix-like tel grep au lieu des outols primitifs de Win$
Salut a tous et merci de vos reponses.
@ Mahmah
Ta commande marche, mais elle ne realise pas une double redirection. L'envoi n'est pas fait "a la fois" mais "l'un apres l'autre". Il y a de nombreux cas dans lesquels il ne va pas marcher.
@ cchristian
Dans l'exemple que j'ai propose, la commande se lit comme suit :
- Lister les fichiers dans system32
- envoyer cette liste dans fichier.txt
- afficher les fichiers dont le nom contient la chaine "mp3"
Bien sur ma syntaxe est incorrecte.
@ jisisv
C'est exactement un tee dont j'aurais besoin en linux. Mais je suis cette fois dans windows et tee n'est pas une commande native et j'ai besoin d'un script portable.
@ Mahmah
Ta commande marche, mais elle ne realise pas une double redirection. L'envoi n'est pas fait "a la fois" mais "l'un apres l'autre". Il y a de nombreux cas dans lesquels il ne va pas marcher.
@ cchristian
Dans l'exemple que j'ai propose, la commande se lit comme suit :
- Lister les fichiers dans system32
- envoyer cette liste dans fichier.txt
- afficher les fichiers dont le nom contient la chaine "mp3"
Bien sur ma syntaxe est incorrecte.
@ jisisv
C'est exactement un tee dont j'aurais besoin en linux. Mais je suis cette fois dans windows et tee n'est pas une commande native et j'ai besoin d'un script portable.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour,
J'avais préparé ça le 8 je ne me souviens plus très bien si ça correspond exactement à ton problème là il est vraiment trop tard pour retester :
dir C:\WINDOWS\system32\ > rein.txt&& FOR /R %%F IN ("*.bat") DO ( ECHO %%F >> rien.txt)
J'avais préparé ça le 8 je ne me souviens plus très bien si ça correspond exactement à ton problème là il est vraiment trop tard pour retester :
dir C:\WINDOWS\system32\ > rein.txt&& FOR /R %%F IN ("*.bat") DO ( ECHO %%F >> rien.txt)
Salut cchristian,
Je viens de tester ta commande mais elle ne marche pas. En effet, a la regarder de plus pres, elle se decompose logiquement de la maniere suviante :
Cette partie liste le contenu de system32 et envoi le resultat dans rein.txt
Cette partie liste les fichiers *.bat (IN ("*.bat")) contenus dans le repertoire courant et ses sous-repertoires (/R), et ajoute cette liste (>>) au fichier rien.txt.
Merci quand meme pour la proposition.
Je viens de tester ta commande mais elle ne marche pas. En effet, a la regarder de plus pres, elle se decompose logiquement de la maniere suviante :
dir C:\WINDOWS\system32\ > rein.txt
Cette partie liste le contenu de system32 et envoi le resultat dans rein.txt
FOR /R %%F IN ("*.bat") DO ( ECHO %%F >> rien.txt)
Cette partie liste les fichiers *.bat (IN ("*.bat")) contenus dans le repertoire courant et ses sous-repertoires (/R), et ajoute cette liste (>>) au fichier rien.txt.
Merci quand meme pour la proposition.