Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] "Склеивание" нескольких текстовых файлов

Ответить
Настройки темы
CMD/BAT - [решено] "Склеивание" нескольких текстовых файлов

Новый участник


Сообщения: 41
Благодарности: 0

Профиль | Отправить PM | Цитировать


Помогите создать один текстовый файл output.txt если в директории есть около десятка текстовых файлов типа 1*.txt+2*.txt+3*.txt и т.д.?

Раньше на Windows 98 использовал скрипт:
Код: Выделить весь код
copy 1*.txt+2*.txt+3*.txt ... output.txt
но в Windows XP файл output.txt не создается если нет файла 1*.txt!
Потому что в рабочей директории не всегда есть файлы от 1*.txt+2*.txt+3*.txt ... , а файл output.txt создавать нужно из тех текстовых файлов которые есть в наличии.

Использовал скрипт:
Код: Выделить весь код
@echo off
pushd c:\1
for %%j in (*.txt) do type "%%j" >> output.txt
popd
:: End_Of_Batch
но он обрабатывает вышеуказанные файла по несколько раз, а это неприемлемо!
Может кто подскажет КАК нужно написать скрипт, чтоб все файлы склеивались в один?

Большое спасибо!!!

Отправлено: 12:18, 21-09-2011

 

Ветеран


Contributor


Сообщения: 2355
Благодарности: 1465

Профиль | Отправить PM | Цитировать


Как я подозреваю на основании примеров в вопросе, в папке содержатся не только те файлы, которые надо объединить. Поэтому применяются несколько масок, причём не всегда по этим маскам присутствуют файлы.
Код: Выделить весь код
cd . >output.txt
copy /b output.txt+1*.txt+2*.txt+3*.txt ... output.txt
Недостаток - вставляется в конец файла output символ с кодом 1А Исправлено с учетом замечания SendMessage
Код: Выделить весь код
cd . >output.txt
FOR %%f IN (3*.txt 1*.txt 2*.txt) DO Type "%%f" >>output.txt

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.


Последний раз редактировалось megaloman, 21-09-2011 в 16:16.

Это сообщение посчитали полезным следующие участники:

Отправлено: 13:14, 21-09-2011 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Старожил


Сообщения: 175
Благодарности: 119

Профиль | Отправить PM | Цитировать


Цитата yaoleg2:
файл output.txt создавать нужно из тех текстовых файлов которые есть в наличии. »
Никакой проблемы нет:
Код: Выделить весь код
copy *.txt output.txt /b
Цитата megaloman:
вставляется в конец файла output символ с кодом 1А »
megaloman, если копировать файлы как двоичные (ключ /b) - не будет вставляться.
Это сообщение посчитали полезным следующие участники:

Отправлено: 13:52, 21-09-2011 | #3



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] "Склеивание" нескольких текстовых файлов

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Загрузка - Как "убрать" меню загрузки Винды 7. Возможность установки нескольких Винд 7 и ХР. flev45 Microsoft Windows 7 2 13-11-2009 23:24
CMD/BAT - [решено] Сравнение двух файлов>ветвление "fc" или "diff" dARKest Скриптовые языки администрирования Windows 4 06-07-2009 23:02
"Склеивание" двух видеофайлов с разными видеопараметрами Student00 Видео и аудио: обработка и кодирование 16 22-01-2009 18:38
[решено] "Подвисание" системы при работе нескольких программ, работающих с интернет. watermute Лечение систем от вредоносных программ 6 27-07-2008 13:52
Запретить/удалить пункт "Programs" ("Программы") из меню кнопки "Start" ("Пуск") submaster Microsoft Windows NT/2000/2003 5 13-09-2006 12:29




 
Переход