IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Scripts/Batch Discussion :

Supprimer ligne vide d'un fichier .txt


Sujet :

Scripts/Batch

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Inscrit en
    Janvier 2006
    Messages
    1 220
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 220
    Par défaut Supprimer ligne vide d'un fichier .txt
    Bonjour,
    J'ai un fichier txt, avec des lignes et des lignes renseignés.
    Je souhaite un fichier éventuellement exécuter un fichier batch qui supprime les lignes vides.
    Quelqu'un connait-il la manipulation ?
    Cordialement.

  2. #2
    Expert confirmé
    Avatar de hackoofr
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2009
    Messages
    3 844
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 844
    Par défaut
    Citation Envoyé par leloup84 Voir le message
    Bonjour,
    J'ai un fichier txt, avec des lignes et des lignes renseignés.
    Je souhaite un fichier éventuellement exécuter un fichier batch qui supprime les lignes vides.
    Quelqu'un connait-il la manipulation ?
    Cordialement.

    Voici un exemple qui peut supprimer les lignes vides dans le même fichier batch :
    Code BAT : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    @echo off
     
     
    Set "InputFile=%~f0"
     
    echo Le fichier d'entree : "%InputFile%"
     
     
    Set "OutputFile=%~dp0%~n0.txt"
     
    echo(
     
    echo Le fichier de sortie : "%OutputFile%"
     
    echo(
     
    echo Appuyez sur une touche pour enlever les lignes vides dans ce fichier batch
    pause>nul
     
    Call:RemoveEmptyLines "%InputFile%" "%OutputFile%"
     
    Start "" "%OutputFile%"
     
    Exit /b
     
    ::*****************************************************************************
    :RemoveEmptyLines <InputFile> <OutputFile>
     
    for /f "delims= tokens=*" %%x in ('Type "%~1"') do echo %%x >> "%~2"
     
    Exit /b
    ::****************************************************************************
    Normalement après l’exécution de ce code vous allez obtenir quelque chose comme ça dans un fichier texte
    @echo off
    Set "InputFile=%~f0"
    echo Le fichier d'entree : "%InputFile%"
    Set "OutputFile=%~dp0%~n0.txt"
    echo(
    echo Le fichier de sortie : "%OutputFile%"
    echo(
    echo Appuyez sur une touche pour enlever les lignes vides dans ce fichier batch
    pause>nul
    Call:RemoveEmptyLines "%InputFile%" "%OutputFile%"
    Start "" "%OutputFile%"
    Exit /b
    ::*****************************************************************************
    :RemoveEmptyLines <InputFile> <OutputFile>
    for /f "delims= tokens=*" %%x in ('Type "%~1"') do echo %%x >> "%~2"
    Exit /b
    ::*****************************************************************************

  3. #3
    Membre éprouvé
    Inscrit en
    Janvier 2006
    Messages
    1 220
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 220
    Par défaut
    Je ne comprends pas tout à fait la manipulation demandé.
    Je colle votre code dans un fichier nommé sup_ligne.bat
    Et quand je vais exécuter ce fichier cela va enlever les lignes vides de monde fichier test.txt ?

  4. #4
    Expert confirmé
    Avatar de hackoofr
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2009
    Messages
    3 844
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 844
    Par défaut
    Citation Envoyé par leloup84 Voir le message
    Je ne comprends pas tout à fait la manipulation demandé.
    Je colle votre code dans un fichier nommé sup_ligne.bat
    Et quand je vais exécuter ce fichier cela va enlever les lignes vides de monde fichier test.txt ?
    On va simplifier la manip
    copier et coller ce code Supp_lignes_Vides.bat
    Code BAT : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    @echo off 
    Title Supprimer les lignes vides dans un fichier
    Rem Ici on définit le chemin du fichier d'entrée
    Set "InputFile=c:\test\testfile.txt" 
    If Not exist "%InputFile%" color 0c & echo "%InputFile%" not found
    pause>nul & exit /b
    Rem Ici on définit le fichier de sortie
    Set "OutputFile=c:\test\testfile2.txt"  
    Rem ici on appelle notre fonction avec 2 paramètres le fichier d'entrée et le fichier de sortie afin de supprimer les lignes vides
    Call:RemoveEmptyLines "%InputFile%" "%OutputFile%" 
    Rem on ouvre le fichier de sortie
    Start "" "%OutputFile%" 
    Exit /b 
    ::***************************************************************************** 
    :RemoveEmptyLines <InputFile> <OutputFile> 
    for /f "delims= tokens=*" %%x in ('Type "%~1"') do echo %%x >> "%~2" 
    Exit /b 
    ::*****************************************************************************

  5. #5
    Expert confirmé
    Avatar de hackoofr
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2009
    Messages
    3 844
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 844
    Par défaut

    Voici une autre version par glisser et déposer le fichier à convertir sur le batch
    Code BAT : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    @echo off 
    Mode con cols=80 lines=3 & color 9E 
    Title Supprimer les lignes vides dans un fichier par glisser et deposer
    Rem Ici on définit le chemin du fichier d'entrée par glisser et déposer
    If [%1]==[] goto :Error
    Set "InputFile=%1" 
    Rem Ici on définit le fichier de sortie
    Set "OutputFile=%InputFile%.txt"  
    echo  Traitement du fichier "%InputFile%"
    Rem ici on appelle notre fonction avec 2 paramètres le fichier d'entrée  et le fichier de sortie afin de supprimer les lignes vides
    Call:RemoveEmptyLines "%InputFile%" "%OutputFile%" 
    Rem on ouvre le fichier de sortie
    Start "" "%OutputFile%" 
    Exit /b 
    ::***************************************************************************** 
    :RemoveEmptyLines <InputFile> <OutputFile> 
    for /f "delims= tokens=*" %%x in ('Type "%~1"') do echo %%x >> "%~2" 
    Exit /b 
    ::***************************************************************************** 
    :Error
    color 0c & echo( & echo   The input file is not found ! Please drag and drop a file to be processed ...
    pause>nul & exit /b

  6. #6
    Membre éprouvé
    Inscrit en
    Janvier 2006
    Messages
    1 220
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 220
    Par défaut
    Je ne comprends pas.
    Ce code ne donne rien. J'ai un fichier test.txt avec des sauts de lignes.
    J'ai un fichier en .bat avec le code ci-dessous. En quand je fais exécuter le .bat manuellement. J'ai une fenêtre noir qui s'ouvre, je fais entrée mais aucun fichier test2.txt ne se créé.
    Je cherche vraiment à ce que çà se fasse automatiquement.
    L'idée c'est que j'ai un fichier qui est généré chaque jour depuis une application en .txt avec des saut de lignes, un batch vient enlever ces sauts de lignes avant qu'une autre tâche envoi se fichier ailleurs propre.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    @echo off 
    Title Supprimer les lignes vides dans un fichier
    Rem Ici on définit le chemin du fichier d'entrée
    Set "InputFile=C:\Nouveau dossier\test.txt" 
    If Not exist "%InputFile%" color 0c & echo "%InputFile%" not found
    pause>nul & exit /b
    Rem Ici on définit le fichier de sortie
    Set "OutputFile=C:\UNouveau dossier\test2.txt"  
    Rem ici on appelle notre fonction avec 2 paramètres le fichier d'entrée et le fichier de sortie afin de supprimer les lignes vides
    Call:RemoveEmptyLines "%InputFile%" "%OutputFile%" 
    Rem on ouvre le fichier de sortie
    Start "" "%OutputFile%" 
    Exit /b 
    ::***************************************************************************** 
    :RemoveEmptyLines <InputFile> <OutputFile> 
    for /f "delims= tokens=*" %%x in ('Type "%~1"') do echo %%x >> "%~2" 
    Exit /b 
    ::*****************************************************************************

Discussions similaires

  1. [Batch] Supprimer lignes vides d'un fichier texte
    Par leloup84 dans le forum Scripts/Batch
    Réponses: 7
    Dernier message: 03/10/2018, 21h04
  2. [XL-2007] Supprimer la dernière ligne vide d'un fichier txt avec vba
    Par nyepalo dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 26/06/2015, 10h31
  3. Supprimer lignes de texte ouverture fichier txt
    Par remi-l dans le forum Scilab
    Réponses: 3
    Dernier message: 17/01/2015, 16h15
  4. Supprimer la dernière ligne vide d'un fichier txt
    Par petit rabot dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 08/12/2011, 13h15
  5. Supprimer ligne vide d'un fichier .txt
    Par Stagiette dans le forum C#
    Réponses: 6
    Dernier message: 26/01/2010, 18h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo