2009-03-04 23 views
3

J'ai un fichier texte que j'importe dans la table d'accès en utilisant l'invite de commande. Le problème est que ce fichier texte a une ligne vide comme dernière ligne. Quelqu'un peut-il me fournir un script qui supprime ma ligne vide à la fin du fichier afin que je puisse finaliser mon processus d'automatisation. J'utilise la plate-forme Windows 2000.Comment puis-je supprimer la dernière ligne d'un fichier texte en utilisant l'invite de commande?

+0

Samar, posez-vous une autre question sur la suppression d'autres lignes vides dans le fichier? –

Répondre

-1

Here est un script qui supprime les lignes vides d'un fichier texte. Il est écrit pour Windows 2000.

Const ForReading = 1 
Const ForWriting = 2 

Set objFSO = CreateObject("Scripting.FileSystemObject") 
Set objFile = objFSO.OpenTextFile("C:\Scripts\Test.txt", ForReading) 

Do Until objFile.AtEndOfStream 
    strLine = objFile.Readline 
    strLine = Trim(strLine) 
    If Len(strLine) > 0 Then 
     strNewContents = strNewContents & strLine & vbCrLf 
    End If 
Loop 

objFile.Close 

Set objFile = objFSO.OpenTextFile("C:\Scripts\Test.txt", ForWriting) 
objFile.Write strNewContents 
objFile.Close 
+1

allez maintenant, ne voyez-vous pas cela peut être fait en 1 ligne avec le bon outil? – Haoest

+0

Yup, ou vous pouvez simplement utiliser ce script sans un outil supplémentaire à s'inquiéter. Sa vieille technologie, mais ça marche. Il a demandé win2k sinon j'aurais utilisé PowerShell. – notandy

+0

(get-content C: \ Fichier.txt) | où {$ _ -ne ""} | out-file c: \ file.txt – notandy

3

Cela fonctionne à l'aide head

head -n -1 input.txt > output.txt 

Malheureusement, je pense que Windows ne vient pas avec cet outil utile par défaut, mais l'installation Cygwin vous donne cela et beaucoup de d'autres choses aussi bien.

+1

Vous pourriez essayer de chercher ici les ports Windows des utilitaires Unix: http://unxutils.sourceforge.net/ – jdigital

4
sed '$d' 

supprime la dernière ligne, mais n'est pas dans Windows 2000. Obtenez les utils de gnu pour obtenir un sed pour Windows.

Sur this site vous trouverez une liste d'autres commandes sed pour manipuler des fichiers.

Questions connexes