Объединять текстовые файлы с помощью командной строки Windows, удаляя ведущие строки

Мне нужно объединить некоторые относительно большие текстовые файлы, и я бы предпочел сделать это через командную строку. К сожалению, у меня есть только Windows, и я не могу установить новое программное обеспечение.

type file1.txt file2.txt > out.txt

позволяет мне почти получить то, что я хочу, но я не хочу, чтобы 1-я строка file2.txt была включена в out.txt.

Я заметил, что more имеет опцию +n для указания начальной строки, но мне не удалось объединить их, чтобы получить желаемый результат. Я знаю, что это может быть невозможно в Windows, и я всегда могу отредактировать out.txt вручную, чтобы избавиться от строки, но есть ли простой способ сделать это из командной строки?

124
задан James 19 March 2010 в 12:39
поделиться

2 ответа

more +2 file2.txt > temp
type temp file1.txt > out.txt

или вы можете использовать копию . См. copy /? для получения дополнительной информации.

copy /b temp+file1.txt  out.txt
134
ответ дан 24 November 2019 в 01:07
поделиться

Используйте команду FOR, чтобы выводить файл построчно, а с опцией 'skip' пропустить несколько начальных строк ...

FOR /F "skip=1" %i in (file2.txt) do @echo %i

Вы можете перенаправить вывод командного файла, содержащего что-то вроде .. .

FOR /F %%i in (file1.txt) do @echo %%i
FOR /F "skip=1" %%i in (file2.txt) do @echo %%i

Обратите внимание на двойной%, когда переменная FOR используется в пакетном файле.

6
ответ дан 24 November 2019 в 01:07
поделиться
Другие вопросы по тегам:

Похожие вопросы: