Batch, extraction nombre dans fichier texte

Résolu/Fermé
drone - 15 déc. 2022 à 23:52
 Drone - 16 déc. 2022 à 10:41

Bonjour,

Je cherche à récupérer une variable provenant d'un serveur MYSQL, elle correspond au nombre de requêtes.

findstr m'affiche une ligne tel que : "| Queries                                       | 12596                                            |"

J'ai besoin de récupérer 12596, l'extraction de caractère avec les chiffres autour de pourcentage ne m'extrait rien après le premier caractère espace. Je vais donc essayer de trouver une commande pour d'abord supprimer les caractères vides dans un fichier mais je pense qu'il y aurait plus simpe, donc si vous avez une idée je vous remercie d'avance.

"C:\Program Files\MySQL\MySQL Server 5.7\bin\mysqladmin.exe" -uuser-ppassword extended -r | findstr -C:Queries > tmp.txt
set /p VAR=<tmp.txt
set VAR2=%VAR:~5,5%
echo %VAR2%


Windows / Chrome 108.0.0.0

A voir également:

2 réponses

jee pee Messages postés 39585 Date d'inscription mercredi 2 mai 2007 Statut Modérateur Dernière intervention 19 avril 2024 9 225
Modifié le 16 déc. 2022 à 00:50

Bonjour,

On supprime les blancs, les pipes et Queries

set VAR="| Queries                                       | 12596                                            |"
set VAR=%VAR: =%
echo %VAR%
set VAR=%VAR:|=%
echo %VAR%
set VAR=%VAR:Queries=%
echo %VAR%

Mais bon, le batch ligne de commande n'est pas le meilleur outil pour cela.


0

Bonjour Jee pee,

Merci pour ton aide, cela m'a bien aidé.

De mon côté cela a fonctionné uniquement lorsque j'enlève les pipes en premier sinon cela affichait une erreur.

set /p VAR=<tmp.txt
::formatage variable VAR
::enlevement |
set VAR=%VAR:|=%
::enlevement espace vide
set VAR=%VAR: =%
::enlevement queries
set VAR=%VAR:Queries=%
echo %VAR%

@+

0