Bonjour,
J'utilise depuis quelques mois SM, que je trouve pas mal du tout. Mon problème :
- je lis un fichier txt en début de ma SM, et je souhaiterais après traitement supprimer la première ligne du fichier txt afin d'éviter que celle-ci ne revienne dans la boucle. Y-a-t-il une astuce particulière sans utiliser un batch.
merci pour votre réponse !
[Résolu] supprimer la premiere ligne d'un fichier txt
-
- Messages : 34
- Enregistré le : 10 mars 2017, 22:00
[Résolu] supprimer la premiere ligne d'un fichier txt
Modifié en dernier par lenautile16 le 17 mars 2017, 19:31, modifié 1 fois.
Re: supprimer la premiere ligne d'un fichier txt
Plusieurs solution, parmis lesquelles :
- Ouvrir le fichier texte
- Ctrl A (sélectionner tout)
- Touche "Homme" ou "orig" (origine pour sélectionner la 1ere ligne)
- Shift presser
- Fleche vers le bas pour sélectionner la 1ere ligne (SI tu n'as pas de retour automatique avec le bloc-note)
- Shift relâcher
- Ctrl X (couper)
- Ctrl S (sauver)
J'ai découvert SM en 99, rapidement Adam m'a promu admin.
Posez vos questions aussi clairement que possible, sans fautes qui piquent les yeux et relisez vous.
Vérifiez sur mon DISCORD si je suis en ligne.
Posez vos questions aussi clairement que possible, sans fautes qui piquent les yeux et relisez vous.
Vérifiez sur mon DISCORD si je suis en ligne.
-
- Messages : 34
- Enregistré le : 10 mars 2017, 22:00
Re: supprimer la premiere ligne d'un fichier txt
Bonjour,
Merci pour la réponse, mais je souhaiterais le faire avec une fonction de Super-Macro, j'ai regardé du côté du Vbscrip, rien de vraiment dynamique. Reste à utiliser un batch (mais bon si j'avais pu éviter), mais c'est déjà plus sûr que les copier-coller, avec les move de la souris. J'ai aussi vu une astuce qui consistait aussi à lire le fichier à partir de la seconde ligne, sauvegarder ce fichier avec un autre nom, puis recopier ce dernier en mettant de nouveau le nom initial. C'est pas mal, mais le temps d'effectuer l'opération, le fichier est inaccessible.
J'ai oublié de préciser une chose importante, ce fichier txt est alimenté par plusieurs utilisateurs.....ce fichier sert en quelque sorte de file d'attente pour la SM.
Je recherche en faisant quelques tests. Si je trouve, je mettrai la solution.
Encore merci !
Merci pour la réponse, mais je souhaiterais le faire avec une fonction de Super-Macro, j'ai regardé du côté du Vbscrip, rien de vraiment dynamique. Reste à utiliser un batch (mais bon si j'avais pu éviter), mais c'est déjà plus sûr que les copier-coller, avec les move de la souris. J'ai aussi vu une astuce qui consistait aussi à lire le fichier à partir de la seconde ligne, sauvegarder ce fichier avec un autre nom, puis recopier ce dernier en mettant de nouveau le nom initial. C'est pas mal, mais le temps d'effectuer l'opération, le fichier est inaccessible.
J'ai oublié de préciser une chose importante, ce fichier txt est alimenté par plusieurs utilisateurs.....ce fichier sert en quelque sorte de file d'attente pour la SM.
Je recherche en faisant quelques tests. Si je trouve, je mettrai la solution.
Encore merci !
-
- Messages : 34
- Enregistré le : 10 mars 2017, 22:00
Re: supprimer la premiere ligne d'un fichier txt
J'ai procédé de la manière suivante :
Etape 1 : Installation de CYGWIN (je vous le recommande fortement, même s'il y a certains équivalents en batch...les commandes linux peuvent être d'un grand secours)
Etape 2 : Changer la Variable d'environnement de Windows, autrement dit le PATH, en précisant juste derrière un ;
cygwin64/bin/, sachant que j'ai installé cygwin64 sur la racine du DD en c:/
Etape 3 : créer un fichier batch en mettant la ligne suivante
sed '1d' /chemin du fichier complet/ fichier.txt > fichier2.txt (pour les windowsiens, on peut faire la même chose avec findstr)
Eh oui, c'est l'inconvénient, il faut se servir d'un fichier temporaire pour effectuer l'opération.
==> Dans la super_Macro :
[execute fichier.batch] (le fichier batch va créer automatiquement le fichier2.txt)
pause 2 secondes
[effacer] fichier.txt
pause 2 secondes
[renommer] fichier2.txt en fichier.txt
On peut aussi tout mettre dans un fichier.bat (création, effacer, supprimer), j'ai testé, c'est encore mieux....mais via la SM, en cas de plantage, on peut se faire un petit fichier de log.
J'utilise Windows7 sur une machine virtuelle avec virtualbox
Etape 1 : Installation de CYGWIN (je vous le recommande fortement, même s'il y a certains équivalents en batch...les commandes linux peuvent être d'un grand secours)
Etape 2 : Changer la Variable d'environnement de Windows, autrement dit le PATH, en précisant juste derrière un ;
cygwin64/bin/, sachant que j'ai installé cygwin64 sur la racine du DD en c:/
Etape 3 : créer un fichier batch en mettant la ligne suivante
sed '1d' /chemin du fichier complet/ fichier.txt > fichier2.txt (pour les windowsiens, on peut faire la même chose avec findstr)
Eh oui, c'est l'inconvénient, il faut se servir d'un fichier temporaire pour effectuer l'opération.
==> Dans la super_Macro :
[execute fichier.batch] (le fichier batch va créer automatiquement le fichier2.txt)
pause 2 secondes
[effacer] fichier.txt
pause 2 secondes
[renommer] fichier2.txt en fichier.txt
On peut aussi tout mettre dans un fichier.bat (création, effacer, supprimer), j'ai testé, c'est encore mieux....mais via la SM, en cas de plantage, on peut se faire un petit fichier de log.
J'utilise Windows7 sur une machine virtuelle avec virtualbox