2013-10-28 4 views
21

Ich habe eine demo.txt-Datei. Ich muss Inhalt in dieser Datei mit einer Batch-Datei löschen. Bitte sagen Sie mir den Befehl zum Löschen von Inhalten für die demo.txt-Datei.So löschen Sie Inhalt aus einer Textdatei mit Windows-Batch-Skript

+2

Möchten Sie den Inhalt in der demo.txt löschen oder möchten nur bestimmten Text in der Datei löschen? – Chelseawillrecover

+0

Vorsicht, stellen Sie sicher, dass Sie die genaue Datei angeben, wenn Sie auf die falsche Datei zeigen, können Sie den Inhalt möglicherweise nicht wiederherstellen, außer Sie haben eine Sicherung oder erstellen Sie eine vor dem Ausführen von Skript. – Chelseawillrecover

Antwort

38
break>demo.txt 

Versuchen Sie dies.Es wird eine leere Datei an der Stelle der demo.txt gesetzt. Wie break ist interner Befehl, der nichts tut, sollte es ziemlich schnell sein. Da der Befehl brechen kann Ausgabe nur mit /? Argument dies macht diese Methode ziemlich robust.

16

Eingabeaufforderung:

  1. break>c:\'file directory'\demo.txt

Powershell:

  1. Clear-Content c:\'file directory'\demo.txt
6
type nul > demo.txt 

arbeitet ein nd funktioniert auch in JPSofts TakeCommand TCC.EXE Befehlsshell (wobei "break" "BREAK is ON" anstelle von nichts in Microsoft CMD.EXE ausgibt)

Die allgemeine Idee ist, einen Befehl zu finden, der Nothing ausgibt und umleiten, dass auf die Datei>

+0

Dies funktionierte, schien aber länger zu dauern als der Befehl "Pause>". Irgendeine Idee warum? – user1167442

0

Dies scheint intuitivste mir:

copy /y nul demo.txt 

Hinweis: Leider, wie die anderen Methoden hier zur Verfügung gestellt, dies schlägt fehl, wenn demo.txt ist derzeit von einem anderen Prozess . In einem solchen Fall ist es manchmal möglich, die Datei in einem Texteditor zu öffnen und den gesamten Inhalt zu löschen, obwohl die Datei verwendet wird. Ich kenne keine Möglichkeit, dies über die Befehlszeile zu tun.

+0

Dies funktioniert überhaupt nicht. Es Echo ''1 Datei (en) kopiert.' in die Datei. – user1167442

+0

Es sollte die Ausgabe "1 Datei (en) kopiert" angezeigt werden, aber die resultierende Datei sollte 0 Länge sein. Funktioniert für mich, ich habe gerade überprüft. Stellen Sie sicher, dass Sie die Ausgabe nicht umleiten. – yoyo

Verwandte Themen