将一个文本文件的内容移动到另一个文本文件的末尾

将一个文本文件的内容移动到另一个文本文件的末尾

如何附加将一个文本文件(file1.txt)的内容复制到另一个文本文件(file2.txt),并删除第一个文件的内容,但仍然保留着使用命令行工具清空吗?

有什么办法吗?还是我必须采取其他方法?

理想情况下,如果可以在 Windows XP 平台上使用命令行工具来完成,那就最好了。

答案1

C:\>type file1.txt >>file2.txt <ENTER>
C:\>echo.>file1.txt  <ENTER>

唯一的问题是 file1.txt 中有一个换行符,并且不是 0 字节。你可以将第二个命令 ie 替换为,echo.>file1.txt这样 type nul>file1.txtfile1.txt 就会真正为空,为 0 字节。

答案2

要附加它,如果它们是纯文本,你可以按照 barlop 建议的那样进行操作:

C:\> echo.>> file2.txt     :: If you want to add a blank line between them
C:\> type file1.txt >> file2.txt

或者如果它是二进制的和/或任何其中的非文本字符(例如Unicode,UTF-8等):

C:\> copy /b file1.txt + file2.txt file.tmp
C:\> del file1.txt
C:\> ren file.tmp file1.txt

现在有一种可靠的方法(在 DOS 和 Windows 中至少最高可达 7)将第二个文件清零:

C:\> ren > file2.txt
or
C:\> ren > file2.txt 2> nul   :: to hide the error message (Windows only)

答案3

这应该有效:

type file1.txt >> file2.txt && echo. > 1.txt

答案4

如何使用适用于 Windows 的 unixutils

然后像在 unix 上工作一样执行附加/触摸操作。

相关内容