Découper un fichier en plusieurs partie
Résolu/Fermé
Ka-El
Messages postés
260
Date d'inscription
lundi 28 novembre 2011
Statut
Membre
Dernière intervention
7 août 2020
-
Modifié le 7 août 2019 à 10:24
Ka-El Messages postés 260 Date d'inscription lundi 28 novembre 2011 Statut Membre Dernière intervention 7 août 2020 - 8 août 2019 à 10:45
Ka-El Messages postés 260 Date d'inscription lundi 28 novembre 2011 Statut Membre Dernière intervention 7 août 2020 - 8 août 2019 à 10:45
A voir également:
- Découper un fichier en plusieurs partie
- Fichier rar - Guide
- Comment ouvrir un fichier epub ? - Guide
- Comment réduire la taille d'un fichier - Guide
- Comment découper un pdf - Guide
- Ouvrir un fichier .bin - Guide
4 réponses
dubcek
Messages postés
18758
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
24 décembre 2024
5 623
7 août 2019 à 10:53
7 août 2019 à 10:53
hello
est-il envisageable d'utiliser awk pour DOS ?
http://gnuwin32.sourceforge.net/packages/gawk.htm
est-il envisageable d'utiliser awk pour DOS ?
http://gnuwin32.sourceforge.net/packages/gawk.htm
dubcek
Messages postés
18758
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
24 décembre 2024
5 623
Modifié le 7 août 2019 à 15:28
Modifié le 7 août 2019 à 15:28
essayer
@echo off set c=1001 set s="FIN" setlocal enabledelayedexpansion for /f "delims=" %%a In (fichier.txt) Do ( set n=fichier.!c:~-2!.txt echo %%a>> !n! echo %%a | findstr %s% > NUL if !errorlevel! EQU 0 (set /a c=!c!+1) )
Ka-El
Messages postés
260
Date d'inscription
lundi 28 novembre 2011
Statut
Membre
Dernière intervention
7 août 2020
Modifié le 7 août 2019 à 16:41
Modifié le 7 août 2019 à 16:41
Salut dubcek,
ça marche plutôt pas mal.
En revanche, je ne sais pas si j'ai bien fait, mais j'ai ajouté un timeout suite au script car il met un certain temps à se dérouler entièrement :
je pose la question, car durant le processus, j'ai ces messages qui se sont affichés dans ma fenêtre dos:
C'est étrange, car le script semble donner le résultat attendu.
Quelle pourrait être la raison de cet affichage ?
Ka-El
ça marche plutôt pas mal.
En revanche, je ne sais pas si j'ai bien fait, mais j'ai ajouté un timeout suite au script car il met un certain temps à se dérouler entièrement :
timeout/t 15 /nobreak >nul
je pose la question, car durant le processus, j'ai ces messages qui se sont affichés dans ma fenêtre dos:
. was unexpected at this time.
' was unexpected at this time.
. was unexpected at this time.
. was unexpected at this time.
. was unexpected at this time.
. was unexpected at this time.
. was unexpected at this time.
. was unexpected at this time.
. was unexpected at this time.
. was unexpected at this time.
' was unexpected at this time.
' was unexpected at this time.
' was unexpected at this time.
' was unexpected at this time.
. was unexpected at this time.
. was unexpected at this time.
. was unexpected at this time.
' was unexpected at this time.
. was unexpected at this time.
. was unexpected at this time.
. was unexpected at this time.
. was unexpected at this time.
. was unexpected at this time.
. was unexpected at this time.
.bat' was unexpected at this time.
' was unexpected at this time.
. was unexpected at this time.
' was unexpected at this time.
' was unexpected at this time.
C'est étrange, car le script semble donner le résultat attendu.
Quelle pourrait être la raison de cet affichage ?
Ka-El
dubcek
Messages postés
18758
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
24 décembre 2024
5 623
7 août 2019 à 18:18
7 août 2019 à 18:18
DOS c'est lent
montre le code
afficher la ligne en cours : (j'ai pas testé)
montre le code
afficher la ligne en cours : (j'ai pas testé)
if !errorlevel! EQU 0 (set /a c=!c!+1&set /A x=!c!-1000&echo !x!)
barnabe0057
Messages postés
14454
Date d'inscription
lundi 2 mars 2009
Statut
Contributeur
Dernière intervention
30 novembre 2024
4 918
Modifié le 8 août 2019 à 05:52
Modifié le 8 août 2019 à 05:52
Bonjour,
Je passe par ici vite fait ;)
Je n'ai pas le temps de tester mais voilà ce que j'aurais fait :
Je passe par ici vite fait ;)
Je n'ai pas le temps de tester mais voilà ce que j'aurais fait :
@echo off
set c=1001
setlocal enabledelayedexpansion
for /f "delims=" %%a In (fichier.txt) Do (
set n=!c:~-2!
echo %%a>> fichier_!n!.txt
if "%%a"=="#?FIN" (set /a c+=1)
)
dubcek
Messages postés
18758
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
24 décembre 2024
5 623
8 août 2019 à 10:41
8 août 2019 à 10:41
probable que le if soit plus rapide que le findstr
Ka-El
Messages postés
260
Date d'inscription
lundi 28 novembre 2011
Statut
Membre
Dernière intervention
7 août 2020
8 août 2019 à 10:45
8 août 2019 à 10:45
Je confirme c'est beaucoup plus rapide et je n'ai plus les erreurs indiquées ci-dessus.
Merci beaucoup à vous deux pour votre aide !
Vous êtes géniaux ! :-)
Merci beaucoup à vous deux pour votre aide !
Vous êtes géniaux ! :-)