Petit utilitaire (révolutionnaire) pour les batchs

Le
Méta-MCI \(MVP\)
Bonsoir !

Un petit utilitaire révolutionnaire : pipetemp.exe

Ce qu'il fait : il redirige STDOUT vers la variable d'environnement
RESULTAT, via un fichier %TEMP%temp.bat
Cela permet de récupérer le résultat des commandes consoles, dans un
batch, sans avoir à utiliser FOR, qui est assez pénible.
ATTENTION : la sortie doit être une (seule) ligne.

Un (triple) exemple d'utilisation :

@echo off
setlocal

chcp |pipetemp && call %TEMP%temp.bat
echo %RESULTAT%

hostname |pipetemp && call %TEMP%temp.bat
echo Nom HOST : %RESULTAT%

CD /dD:devbat
dir *.bat |find "fichier(s)"|C:pipetemp && call %TEMP%temp.bat
echo Batchs :%RESULTAT%

endlocal


@-salutations
--
Michel Claveau


PS : je n'ai pas le temps de le mettre en ligne avant vendredi. Soyez
patients.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Jacques Barathon [MS]
Le #706512
"Méta-MCI (MVP)" news:477c19d4$0$858$
Bonsoir !

Un petit utilitaire révolutionnaire : pipetemp.exe

Ce qu'il fait : il redirige STDOUT vers la variable d'environnement
RESULTAT, via un fichier %TEMP%temp.bat
Cela permet de récupérer le résultat des commandes consoles, dans un
batch, sans avoir à utiliser FOR, qui est assez pénible.


Révolutionnaire! Tu powershellises CMD? :-)

ATTENTION : la sortie doit être une (seule) ligne.


Dommage. Mais c'est déjà pas mal.

Par contre, je suggérerais d'appeler la variable %pipetemp% plutôt que
%resultat% : le nom RESULTAT est trop commun et risque donc d'être déjà
utilisé dans un script un peu long, en plus le nom PIPETEMP est facile à
retenir puisque c'est le nom de l'exécutable qui génère la variable.

Sinon, tu pourrais proposer de passer le nom de la variable en paramètre, ce
serait possible?

Jacques

MCI \(ex do ré Mi chel la si do\) [MVP]
Le #706511
Bonjour !

je suggérerais d'appeler la variable %pipetemp%


Très bonne idée ! Je vais faire la modif dans l'après midi. Encore
faudra-t'il que j'eusse mémorisé(1) ta suggestion.

passer le nom de la variable en paramètre, ce serait possible?


Aaaargh ! C'est une idée qui aurait été(2) facile à réaliser. Mais,
entre temps, j'ai déjà ajouté deux paramètres optionnels : une liste de
"séparateurs" et un numéro d'item. (pour pouvoir "splitter" le
résultat, et n'en récupérer qu'un (seul) morceau.
Je vais voir, en basculant vers des paramètres nommés.

@+

Michel Claveau




(1) utilisation du plus-que-parfait du subjonctif, pour montrer à ma
fille que ça peut s'employer "en vrai".

(2) utilisation du futur antérieur, pour montrer à ma fille que ça
s'utilise aussi "en vrai".

MCI \(ex do ré Mi chel la si do\) [MVP]
Le #706510
Re !

Tu powershellises CMD?


Il faut bien que je progresse, vu que MS, pour Vista me pique des idées
d'utilitaires (par exemple Clip.exe, qui fait la même chose que mon
utilitaire fclipboard.exe ; ou timeout.exe qui remplace sleepm.exe)

@-salutations

Michel Claveau

Publicité
Poster une réponse
Anonyme