Extraire des données
Résolu/Fermé
BN15
Messages postés
25
Date d'inscription
mardi 20 juin 2017
Statut
Membre
Dernière intervention
21 juin 2017
-
20 juin 2017 à 10:38
barnabe0057 - 9 août 2017 à 14:02
barnabe0057 - 9 août 2017 à 14:02
A voir également:
- Extraire des données
- Extraire une video youtube - Guide
- Extraire son video - Guide
- Extraire image pdf - Guide
- Excel validation des données liste - Guide
- Extraire fichier rar - Guide
5 réponses
barnabe0057
Messages postés
14452
Date d'inscription
lundi 2 mars 2009
Statut
Contributeur
Dernière intervention
3 août 2024
4 917
Modifié le 20 juin 2017 à 12:58
Modifié le 20 juin 2017 à 12:58
Bonjour,
Là tout de suite je n'ai pas de windows pour tester, mais ça devrait ressembler à ça :
“L'intelligence artificielle se définit comme le contraire de la bêtise naturelle.”
Là tout de suite je n'ai pas de windows pour tester, mais ça devrait ressembler à ça :
@echo off
setlocal enabledelayedexpansion
for /f "eol=µ tokens=1,* delims=^<" %%A in (test.txt) do (
set infos=%%B
set infos=!infos:~0,34!
echo !infos!
)
endlocal
pause
exit
“L'intelligence artificielle se définit comme le contraire de la bêtise naturelle.”
barnabe0057
Messages postés
14452
Date d'inscription
lundi 2 mars 2009
Statut
Contributeur
Dernière intervention
3 août 2024
4 917
20 juin 2017 à 13:41
20 juin 2017 à 13:41
Je viens de tester, le premier script fonctionne bien :
@echo off
setlocal enabledelayedexpansion
for /f "eol=µ tokens=1,* delims=^<" %%A in (test.txt) do (
set infos=%%B
set infos=!infos:~0,34!
echo !infos! > "cheminacces\infos.txt"
)
endlocal
pause
exit
BN15
Messages postés
25
Date d'inscription
mardi 20 juin 2017
Statut
Membre
Dernière intervention
21 juin 2017
20 juin 2017 à 13:47
20 juin 2017 à 13:47
le resultat retourné par ce script est ~0-34.
quel resultat obtient tu avec le script ?
quel resultat obtient tu avec le script ?
barnabe0057
Messages postés
14452
Date d'inscription
lundi 2 mars 2009
Statut
Contributeur
Dernière intervention
3 août 2024
4 917
>
BN15
Messages postés
25
Date d'inscription
mardi 20 juin 2017
Statut
Membre
Dernière intervention
21 juin 2017
20 juin 2017 à 13:52
20 juin 2017 à 13:52
J'obtiens ça : 1030> Jun 20 06:40:00
Tu as dû oublier un caractère quelque part, tu as bien fait un copier-coller ?
Tu as dû oublier un caractère quelque part, tu as bien fait un copier-coller ?
barnabe0057
Messages postés
14452
Date d'inscription
lundi 2 mars 2009
Statut
Contributeur
Dernière intervention
3 août 2024
4 917
>
barnabe0057
Messages postés
14452
Date d'inscription
lundi 2 mars 2009
Statut
Contributeur
Dernière intervention
3 août 2024
20 juin 2017 à 13:55
20 juin 2017 à 13:55
Je vois que tu obtiens : ~0-34
Ce qui me laisse penser que tu as mis un tiret au lieu d'une virgule
Ce qui me laisse penser que tu as mis un tiret au lieu d'une virgule
BN15
Messages postés
25
Date d'inscription
mardi 20 juin 2017
Statut
Membre
Dernière intervention
21 juin 2017
20 juin 2017 à 14:07
20 juin 2017 à 14:07
oui j'ai fait un copier coller du script.
je ne comprend pas pourquoi le résultat est différent.
je ne comprend pas pourquoi le résultat est différent.
barnabe0057
Messages postés
14452
Date d'inscription
lundi 2 mars 2009
Statut
Contributeur
Dernière intervention
3 août 2024
4 917
>
BN15
Messages postés
25
Date d'inscription
mardi 20 juin 2017
Statut
Membre
Dernière intervention
21 juin 2017
20 juin 2017 à 14:09
20 juin 2017 à 14:09
Poste ton script, on sait jamais ;)
J'ai testé sur l'échantillon que tu as fourni au début.
Est-ce que tu aurais un échantillon plus grand ?
J'ai testé sur l'échantillon que tu as fourni au début.
Est-ce que tu aurais un échantillon plus grand ?
BN15
Messages postés
25
Date d'inscription
mardi 20 juin 2017
Statut
Membre
Dernière intervention
21 juin 2017
20 juin 2017 à 14:55
20 juin 2017 à 14:55
~0,34
barnabe0057
Messages postés
14452
Date d'inscription
lundi 2 mars 2009
Statut
Contributeur
Dernière intervention
3 août 2024
4 917
20 juin 2017 à 14:57
20 juin 2017 à 14:57
Est-ce que ton fichier s'appelle bien test.txt ?
BN15
Messages postés
25
Date d'inscription
mardi 20 juin 2017
Statut
Membre
Dernière intervention
21 juin 2017
20 juin 2017 à 15:01
20 juin 2017 à 15:01
oui.
barnabe0057
Messages postés
14452
Date d'inscription
lundi 2 mars 2009
Statut
Contributeur
Dernière intervention
3 août 2024
4 917
Modifié le 20 juin 2017 à 15:00
Modifié le 20 juin 2017 à 15:00
J'ai une idée, essaie comme ça :
“L'intelligence artificielle se définit comme le contraire de la bêtise naturelle.”
@echo off
setlocal enableextensions enabledelayedexpansion
set source=%USERPROFILE%\Pictures\Debut
cd %source%
for /f "eol=µ usebackq tokens=1,* delims=<" %%A in ("test.txt") do (
set infos=%%B
set infos=!infos:~0,38!
echo ^<!infos! > infos.txt
)
endlocal
pause
exit
“L'intelligence artificielle se définit comme le contraire de la bêtise naturelle.”
BN15
Messages postés
25
Date d'inscription
mardi 20 juin 2017
Statut
Membre
Dernière intervention
21 juin 2017
20 juin 2017 à 15:07
20 juin 2017 à 15:07
Création du fichier OK mais le résultat dans le fichier est <~0,38
BN15
Messages postés
25
Date d'inscription
mardi 20 juin 2017
Statut
Membre
Dernière intervention
21 juin 2017
20 juin 2017 à 15:09
20 juin 2017 à 15:09
sebon pb trouvé, quand j'ai copier l'intérieur de mon fichier sur le site, la mise en forme a changé.
il doit y avoir un espace ou un saut de ligne en quelque part en trop sur le site net par rapport à mon fichier
il doit y avoir un espace ou un saut de ligne en quelque part en trop sur le site net par rapport à mon fichier
BN15
Messages postés
25
Date d'inscription
mardi 20 juin 2017
Statut
Membre
Dernière intervention
21 juin 2017
20 juin 2017 à 15:12
20 juin 2017 à 15:12
voici le copier coller exacte de mon fichier d'origine
;
; Message Information file
;
[message]
origmailbox=029
context=app-vmblast
macrocontext=
exten=1
rdnis=unknown
priority=1
callerchan=SIP/Bouygue-00000ba5
callerid="testVoiceMail/BAL1030" <1030>
origdate=Tue Jun 20 06:40:00 AM UTC 2017
origtime=1497940800
category=
flag=
duration=12
;
; Message Information file
;
[message]
origmailbox=029
context=app-vmblast
macrocontext=
exten=1
rdnis=unknown
priority=1
callerchan=SIP/Bouygue-00000ba5
callerid="testVoiceMail/BAL1030" <1030>
origdate=Tue Jun 20 06:40:00 AM UTC 2017
origtime=1497940800
category=
flag=
duration=12
barnabe0057
Messages postés
14452
Date d'inscription
lundi 2 mars 2009
Statut
Contributeur
Dernière intervention
3 août 2024
4 917
>
BN15
Messages postés
25
Date d'inscription
mardi 20 juin 2017
Statut
Membre
Dernière intervention
21 juin 2017
Modifié le 20 juin 2017 à 15:13
Modifié le 20 juin 2017 à 15:13
Bon on va faire du debug :
@echo off
setlocal enableextensions enabledelayedexpansion
set source=%USERPROFILE%\Pictures\Debut
cd %source%
echo. & echo le script travaille dans le dossier %CD%
echo. & pause
echo.
if not exist "test.txt" (echo le fichier n'existe pas)
echo. > infos.txt
for /f "eol=µ usebackq tokens=1,* delims=<" %%A in ("test.txt") do (
echo %%A ######### %%B
set infos=%%B
set infos=!infos:~0,38!
echo ^<!infos! >> infos.txt
)
endlocal
pause
exit
BN15
Messages postés
25
Date d'inscription
mardi 20 juin 2017
Statut
Membre
Dernière intervention
21 juin 2017
>
BN15
Messages postés
25
Date d'inscription
mardi 20 juin 2017
Statut
Membre
Dernière intervention
21 juin 2017
20 juin 2017 à 15:37
20 juin 2017 à 15:37
Du coup le code que tu m'a fournis doit je suppose etre modifié ?
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour
Nouveau besoin sur le meme sujet.
Les infos extraite doivent etre moins nombreuse.
Pouvez-vous m'aidez ?
Il me faut uniquement le numero de téléphone.
Nouveau besoin sur le meme sujet.
Les infos extraite doivent etre moins nombreuse.
Pouvez-vous m'aidez ?
Il me faut uniquement le numero de téléphone.
barnabe0057
Messages postés
14452
Date d'inscription
lundi 2 mars 2009
Statut
Contributeur
Dernière intervention
3 août 2024
4 917
8 août 2017 à 10:14
8 août 2017 à 10:14
Slt, il se trouve où le numéro de téléphone ?
alors, le numero de tel se trouve dans un fichier texte.
voici les infos d'un fichier texte
;; Message Information file;[message]origmailbox=029context=app-vmblastmacrocontext=exten=1rdnis=unknownpriority=1callerchan=SIP/Bouygue0000734callerid="testVoiceMail/BAL0674821585" <674821585>origdate=Fri Jun 16 10:13:18 PMUTC 2017origtime=1497617604category=flag=duration=15
;; Message Information file;[message]origmailbox=029context=app-vmblastmacrocontext=exten=1rdnis=unknownpriority=1callerchan=SIP/Bouygue0000733callerid="testVoiceMail/BAL0674821585" <674821585>origdate=Fri Jun 16 11:15:20 PMUTC 2017origtime=1497617604category=flag=duration=15
;; Message Information file;[message]origmailbox=029context=app-vmblastmacrocontext=exten=1rdnis=unknownpriority=1callerchan=SIP/Bouygue0000735callerid="testVoiceMail/BAL0674821585" <674821585>origdate=Fri Jun 16 12:53:24 PMUTC 2017origtime=1497617604category=flag=duration=15
;; Message Information file;[message]origmailbox=029context=app-vmblastmacrocontext=exten=1rdnis=unknownpriority=1callerchan=SIP/Bouygue0000736callerid="testVoiceMail/BAL0674821585" <674821585>origdate=Fri Jun 16 13:53:00 PMUTC 2017origtime=1497617604category=flag=duration=15
Il me faut extraire le <674821585>
voici les infos d'un fichier texte
;; Message Information file;[message]origmailbox=029context=app-vmblastmacrocontext=exten=1rdnis=unknownpriority=1callerchan=SIP/Bouygue0000734callerid="testVoiceMail/BAL0674821585" <674821585>origdate=Fri Jun 16 10:13:18 PMUTC 2017origtime=1497617604category=flag=duration=15
;; Message Information file;[message]origmailbox=029context=app-vmblastmacrocontext=exten=1rdnis=unknownpriority=1callerchan=SIP/Bouygue0000733callerid="testVoiceMail/BAL0674821585" <674821585>origdate=Fri Jun 16 11:15:20 PMUTC 2017origtime=1497617604category=flag=duration=15
;; Message Information file;[message]origmailbox=029context=app-vmblastmacrocontext=exten=1rdnis=unknownpriority=1callerchan=SIP/Bouygue0000735callerid="testVoiceMail/BAL0674821585" <674821585>origdate=Fri Jun 16 12:53:24 PMUTC 2017origtime=1497617604category=flag=duration=15
;; Message Information file;[message]origmailbox=029context=app-vmblastmacrocontext=exten=1rdnis=unknownpriority=1callerchan=SIP/Bouygue0000736callerid="testVoiceMail/BAL0674821585" <674821585>origdate=Fri Jun 16 13:53:00 PMUTC 2017origtime=1497617604category=flag=duration=15
Il me faut extraire le <674821585>
barnabe0057
Messages postés
14452
Date d'inscription
lundi 2 mars 2009
Statut
Contributeur
Dernière intervention
3 août 2024
4 917
>
BN15
Modifié le 8 août 2017 à 10:42
Modifié le 8 août 2017 à 10:42
Comme ça :
for /f "usebackq eol=µ tokens=1,2 delims=<>" %%A in ("fichier.txt") do (echo %%B)
Voici l'etat actuel des chose.
J'ai un dossier partager nommé J: dans lequel se trouve un fichier msgxxx.txt et msgxxx.wav.
Je doit recupérer le numero de tel du fichier msgxxx.txt pour le copier dans un fichier infos.txt qui se trouve dans le chemin C:\Users\Utilisateur\Desktop\Script LDNathan\blat\blat3216\docs\infos.txt.
Dans ce meme chemin se trouve mon script pour extraire et copier dans le fichier infos.txt.
voici mon script actuel.
Celui-ci ne marche pas
@echo off
setlocal enableextensions enabledelayedexpansion
for /r "J:\" %%i in (*.wav) do set msg=%%~nxi
echo %msg%
for /r "J:\" %%i in (*.txt) do set msgt=%%~nxi
echo %msgt%
cd "J:\"
echo. > "C:\Users\Utilisateur\Desktop\Script LDNathan\blat\blat3216\docs\infos.txt"
for /f "usebackq eol=µ tokens=1,2 delims=<>" %%A in ("J:\%msgt%") do (echo %%B) do (
if /i "%%A"=="callerid" (call :numero "%%B")
if /i "%%A"=="origdate" (echo ^<!num!^> %%B >> "C:\Users\Utilisateur\Desktop\Script LDNathan\blat\blat3216\docs\infos.txt")
)
endlocal
call "C:\Users\Utilisateur\Desktop\Script LDNathan\blat\blat3216\docs\envoie.bat"
exit
:numero
for /f "usebackq tokens=1,2 delims=^<^>" %%E in ('%1') do (
set num=%%F
)
goto :eof
Merci d'avance.
J'ai un dossier partager nommé J: dans lequel se trouve un fichier msgxxx.txt et msgxxx.wav.
Je doit recupérer le numero de tel du fichier msgxxx.txt pour le copier dans un fichier infos.txt qui se trouve dans le chemin C:\Users\Utilisateur\Desktop\Script LDNathan\blat\blat3216\docs\infos.txt.
Dans ce meme chemin se trouve mon script pour extraire et copier dans le fichier infos.txt.
voici mon script actuel.
Celui-ci ne marche pas
@echo off
setlocal enableextensions enabledelayedexpansion
for /r "J:\" %%i in (*.wav) do set msg=%%~nxi
echo %msg%
for /r "J:\" %%i in (*.txt) do set msgt=%%~nxi
echo %msgt%
cd "J:\"
echo. > "C:\Users\Utilisateur\Desktop\Script LDNathan\blat\blat3216\docs\infos.txt"
for /f "usebackq eol=µ tokens=1,2 delims=<>" %%A in ("J:\%msgt%") do (echo %%B) do (
if /i "%%A"=="callerid" (call :numero "%%B")
if /i "%%A"=="origdate" (echo ^<!num!^> %%B >> "C:\Users\Utilisateur\Desktop\Script LDNathan\blat\blat3216\docs\infos.txt")
)
endlocal
call "C:\Users\Utilisateur\Desktop\Script LDNathan\blat\blat3216\docs\envoie.bat"
exit
:numero
for /f "usebackq tokens=1,2 delims=^<^>" %%E in ('%1') do (
set num=%%F
)
goto :eof
Merci d'avance.
Essaie comme ça :
@echo off
setlocal enableextensions enabledelayedexpansion
pushd J: || goto :eof
set dossier=%USERPROFILE%\Desktop\Script LDNathan\blat\blat3216\docs
echo. > "%dossier%\infos.txt"
for %%i in (*.wav) do (call :numero "%%~nxi")
for %%i in (*.txt) do (call :numero "%%~nxi")
call "%dossier%\envoie.bat"
endlocal
popd
echo. & pause
exit
:numero
for /f "usebackq eol=µ tokens=1,2 delims=<>" %%A in ("%~1") do (set num=%%B)
echo. & echo ==^>^> %~1 [!num!]
echo !num! >> "%dossier%\infos.txt"
goto :eof
rem
20 juin 2017 à 13:09
Modifié le 20 juin 2017 à 13:12
En attendant ça dit quoi si tu remplaces
par
20 juin 2017 à 13:14
ma commande echo est agrémenté de > "cheminacces\infos.txt" pour stocker les infos dans un fichier texte.
20 juin 2017 à 13:17
Ca devrait donner ça :
<1030>origdate=Tue Jun 20 06:40:00 AM UTC 2017origtime=1497940800category=flag=duration=12
20 juin 2017 à 13:20