我运行的是 Windows 7 Ultimate x64,但我的体验可以追溯到 DOS 3.0。
从 DOS 3.1 开始,您可以使用 COPY 命令将一个文件附加到另一个文件:
COPY FILE1+FILE2=FILE1
不需要临时 FILE3。
这是一个非常方便的命令,因为每当您添加一个新程序时,您通常需要更新您的 CONFIG.SYS
和 AUTOEXEC.BAT
文件。
过去,获得正确的顺序也很重要,否则你最终会得到一个空的 FILE1。
但今天当我尝试这样做时,它没有触及 FILE1
,当我颠倒顺序时,它(可以理解)使 FILE1
成为 FILE2< 的副本
.
有谁知道它是否已被另一种方法取代,以及这种变化是何时发生的?
编辑:
我一直在做更多的测试,奇怪的是即使上面的代码不起作用,你仍然可以从控制台复制并将其附加到现有文件中,如下所示:
copy file1+con=file1
Type some text to append to file1
^Z ([CTRL]+Z the End Of File character)
我想知道我的 Windows 版本是否有问题。任何机构都可以复制我的发现吗?
编辑:
它适用于 95/98/ME/2000/XP/XP Mode/7 Professional x64/8 x64。所以我想这不是 7 Ultimate x64
问题,而是我机器的问题。
*叹息*
编辑:
最后一次编辑,我保证。 :)
这不是我机器的问题,而是 File1 的问题。显然,当我第一次向其附加 File2 时,[CTRL]+Z(EOF 字符)从未被覆盖,导致文件看起来像这样:
Original Data
Original Data
[EOF]
Appended Data
Appended Data
Appended Data
您可以在命令提示符下通过以下实验自己复制它。 (其中 ^Z 是字符 [CTRL]+Z )
在命令提示符下输入:
copy con file1
File One
^Z^Z
copy con file2
File Two
^Z
copy con file3
File Three
^Z
copy file1+file2=file1
copy file2+file3=file2
TYPE file1
TYPE file2
你会看到:
file1
File One
文件2
File Two
File Three
您可以键入 file2 >> file1
或使用几乎任何其他连接文件的方法,当您键入 file1
时,它仍然只显示为包含 File一个
。但是,如果您使用 FIND "searchterm"file
来解析文件,它会告诉您真正发生了什么。在这种情况下键入:
FIND " " file1
您将获得:
---------- FILE1
File One
→File Two
最佳答案
Windows 8 x86:
Microsoft Windows [Version 6.2.9200] (c) 2012 Microsoft Corporation. All rights reserved. C:\Users\Nikos>echo foo>file1 C:\Users\Nikos>echo bar>file2 C:\Users\Nikos>copy /b file1 + file2 file1 file1 file2 1 file(s) copied. C:\Users\Nikos>type file1 foo bar
关于windows - 如何使用 COPY 命令附加到文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12342764/