Redirection des sorties sous DOS
Résolu/Fermé
jogadyl
Messages postés
14
Date d'inscription
dimanche 3 mai 2015
Statut
Membre
Dernière intervention
17 mai 2015
-
3 mai 2015 à 11:38
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 - 4 mai 2015 à 08:48
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 - 4 mai 2015 à 08:48
4 réponses
dubcek
Messages postés
18718
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
22 mars 2024
5 615
4 mai 2015 à 08:48
4 mai 2015 à 08:48
hello
ou regrouper les commandes entre ()
ou regrouper les commandes entre ()
( cmd1
cmd2
cmd3 ) > NUL
NHenry
Messages postés
15112
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
13 avril 2024
330
3 mai 2015 à 12:57
3 mai 2015 à 12:57
Sauf erreur, je crois que c'est :
1>nul 2>nul
1 stdout, 2 stderr
Ensuite, tu peux mettre tes commandes dans un batch et c'est ce batch qui sere redirigé en sortie.
1>nul 2>nul
1 stdout, 2 stderr
Ensuite, tu peux mettre tes commandes dans un batch et c'est ce batch qui sere redirigé en sortie.
jogadyl
Messages postés
14
Date d'inscription
dimanche 3 mai 2015
Statut
Membre
Dernière intervention
17 mai 2015
3 mai 2015 à 14:08
3 mai 2015 à 14:08
Merci pour ta réponse.
Malheureusement ça ne fonctionne pas. :(
On peut effectivement rajouter 1>nul 2>nul à la suite d'une commande
ex:
copy travail\*.tex sauve\ 1>nul 2>nul
Ça, je savais le faire.
Mais il faut répéter cette syntaxe pour toutes les lignes qui peuvent écrire sur l'écran.
Ce que je veux c'est une commande à mettre au début du batch et qui redirige automatiquement stdout et stderr sans avoir à faire suivre chaque ligne de 1>nul 2>nul
Malheureusement ça ne fonctionne pas. :(
On peut effectivement rajouter 1>nul 2>nul à la suite d'une commande
ex:
copy travail\*.tex sauve\ 1>nul 2>nul
Ça, je savais le faire.
Mais il faut répéter cette syntaxe pour toutes les lignes qui peuvent écrire sur l'écran.
Ce que je veux c'est une commande à mettre au début du batch et qui redirige automatiquement stdout et stderr sans avoir à faire suivre chaque ligne de 1>nul 2>nul
NHenry
Messages postés
15112
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
13 avril 2024
330
3 mai 2015 à 19:18
3 mai 2015 à 19:18
A ma connaissance ça n'existe pas, mais en utilisa,nt un batch qui en appel un autre en redirigeant les sorties, c'est faisable.
jogadyl
Messages postés
14
Date d'inscription
dimanche 3 mai 2015
Statut
Membre
Dernière intervention
17 mai 2015
3 mai 2015 à 22:22
3 mai 2015 à 22:22
Ah oui !
J'ai compris la manoeuvre.
C'est un peu tordu, mais ça fonctionne.
En reprenant l'idée je peux l'appliquer à une routine qui se trouve dans le même fichier batch.
ex:
Merci !
Le problème est résolu.
J'ai compris la manoeuvre.
C'est un peu tordu, mais ça fonctionne.
En reprenant l'idée je peux l'appliquer à une routine qui se trouve dans le même fichier batch.
ex:
@echo off
call :ecriture > sortie.txt
goto :eof
rem --- fin du programme principal
rem programme appelé et redirige
:ecriture
echo cette routine
echo veut ecrire sur l'ecran
echo mais c'est redirige
echo par le programme principal
Merci !
Le problème est résolu.