Как добавить файл с помощью команды COPY
я запускаю Windows 7 Ultimate x64, но мой опыт восходит к DOS 3.0.
так как, как DOS 3.1, вы смогли добавить файл к другому с помощью этой команды копирования:
COPY FILE1+FILE2=FILE1
оформление временного файл file3 ненужных.
это была очень удобная команда, так как всякий раз, когда вы добавляли новую программу, вам часто приходилось обновлять свой CONFIG.SYS
и AUTOEXEC.BAT
файлы.
это также было то, что получение правильный порядок был importiant, иначе вы получите пустой ФАЙЛ1.
но сегодня, когда я попробовал это, он ушел FILE1
нетронутый, и когда я поменял порядок, он (понятно) сделал FILE1
копия FILE2
.
кто-нибудь знает, Был ли он заменен другим методом, и когда это изменение произошло?
EDIT:
я делал больше тестирования, и странно, хотя приведенный выше код не будет работать, вы все еще можно скопировать подоконник из консоли и добавить его в существующий файл, например:
copy file1+con=file1
Type some text to append to file1
^Z ([CTRL]+Z the End Of File character)
мне интересно, если моя версия Windows перепутались как-то. Можно повторить мои выводы?
EDIT:
он работает на 95 / 98 / ME / 2000 / XP / XP Mode / 7 Professional x64 / 8 x64. Поэтому я предполагаю, что это не 7 Ultimate x64
проблема, а скорее проблема с моей машиной.
* вздох *
EDIT:
последнее редактирование, я обещаю. :)
это была не проблема с моей машиной, это была проблема с 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
10 ответов
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
убедитесь, что вы начинаете с свежих файлов, которые вы никогда не пытались скопировать.
Я только что нашел это на моем (XP sp3)copy a+b a
без /b
добавляет 1A
(SUB
) до конца файла, который делает что-либо после того, как он исчезнет с вывода type
(а more
покажет это). Copy /b a+b a
строительство.
ответ на: "как добавить файл с помощью команды COPY"
предупреждение: если у вас есть список файлов, которые вы хотите объединить с помощью команды COPY, это просто, но потенциально может уничтожить ваши файлы.
Опасный Путь:
copy /b one + two + three
-- добавит содержимое "два" и "три" в файл "один". Таким образом, исходный "один" теперь имеет содержимое 3 файлов в правильной последовательности. Если во время копирования-процесса что-то пойдет не так, у вас не будет возможности восстановить исходный "один", так как он будет поврежден, и ваши данные по существу будут потеряны. Почти никогда нет причин использовать этот способ.
Безопасный Способ:
copy /b one + two new_filename
-- объединит 2 файла (вы можете перечислить более двух, конечно), создав new_filename, содержащий "один" и "два" в правильной последовательности, и оставив исходные файлы нетронутыми.
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
подождите! Есть еще! (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 файл(ы) скопирован", он просто не любит файлы с забавными именами.