我正在运行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
file2
File Two
File Three
您可以type file2 >> file1
或使用几乎任何其他连接文件的方法,当您输入file1
时,它仍然只会包含File One
。但是如果你使用FIND "searchterm" file
来解析文件,它会告诉你真正发生了什么。在这种情况下输入:
FIND " " file1
你会得到奖励:
---------- FILE1
File One
→File Two
答案 0 :(得分:29)
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
答案 1 :(得分:4)
type file2 >> file1
答案 2 :(得分:2)
确保您从未尝试过的新文件开始
我刚发现在我的(XP sp3)copy a+b a
上没有/b
将1A
(SUB
)追加到文件的末尾,这使得它从{的输出后消失{1}}(但type
会显示)。 more
有效。
答案 3 :(得分:2)
@echo off
cls
type "file2.txt" >> "file1.txt"
exit
答案 4 :(得分:2)
回答:“如何使用COPY命令附加到文件”
警告:如果您希望通过COPY命令合并文件列表,这很简单,但可能会破坏您的文件。
危险的方式:
e
- 会将“two”和“three”的内容追加到文件“one”中。因此,原始的“one”现在具有正确顺序的3个文件的内容。如果在复制过程中出现问题,你就无法恢复原来的“一”,因为它会被破坏而你的数据基本上会丢失。用这种方式几乎没有理由。
安全的方式:
copy /b one + two + three
- 将合并2个文件(当然可以列出两个以上),按正确的顺序创建一个包含“one”和“two”的new_filename,并保留原始文件。
答案 5 :(得分:1)
您是否尝试过copy /b file1 + file2 file1
答案 6 :(得分:1)
copy /b input1 + input2 output
del input1
ren output input1
也许这个? :P
答案 7 :(得分:1)
C:\Users\Nikos>type file1 foo bar C:\Users\Nikos>copy file1+con=file1 file1 con ihdui ohisd ^Z 1 file(s) copied. C:\Users\Nikos>type file1 foo bar ihdui ohisd
答案 8 :(得分:1)
等待!还有更多! (Win7 Pro)
>ver
Microsoft Windows [Version 6.1.7601]
>copy file.a.txt + file.b.txt file.ab.txt
file.a.txt
1 file(s) copied
>copy fileA.txt + fileB.txt fileAB.txt
fileA.txt
fileB.txt
1 files(s) copied
不要复制" 1文件"通知,它只是不喜欢有趣名字的文件。
答案 9 :(得分:0)
要复制到二进制文件...
将所有文件放在同一文件夹中,例如G:\Files
g:
cd Files
copy /B *.* TargetFilename.ext
和.ext
是所需文件的类型
答案 10 :(得分:-2)
copy *.* ´target.ext'