![]() |
CMD txt Задача
В папке много txt с разными названиями (пример):
file1.txt file2.txt file3.txt file4.txt ... В каждом txt различные данные (пример): data1 data2 data3 data4 data5 data6 data7 ... Необходимо в начало каждого файла добавить название самого файла (без расширения), дописать после этого ">>>" и объединить все строки файла в одну с разделителем ";" file1>>>data1;data2;data3;data4;data5;data6;data7; Далее объединить полученные результаты из всех файлов в один txt построчно. file1>>>data1;data2;data3;data4;data5;data6;data7; file2>>>data1;data2;data3;data4;data5;data6;data7; file3>>>data1;data2;data3;data4;data5;data6;data7; file4>>>data1;data2;data3;data4;data5;data6;data7; ... |
Пробуйте:
Скрытый текст
Код:
Option Explicit Цитата:
Цитата:
|
patr1k,
Цитата:
А так, пальцем в небо, вариант bat-файла Код:
@Echo Off Я не стал изменять исходные файлы, однако, если это необходимо сделать, уберите rem в выделенной строке. Пути к файлам пропишИте свои. |
megaloman, замените:
Код:
For %%f In ("%FileIn%") Do ( Код:
for /f (`dir /b /a:-d "%FileIn%"… |
Iska, Не совсем понял Ваш совет. Что мне не нравится в Dir в этом контексте - в переменную For получим имя файла без пути. А в последующем мне нужно полное имя файла. Либо надо как-то выдернуть путь из "%FileIn%", либо изначально вводить 2 переменные для папки и маски файлов.
Слабое место скрипта - я не знаю, что такое dataXX, если там какие-нибудь звёздочки со знаками препинания и спецсимволами - тады ой! А Вы, почему-то вопреки устоявшейся правильной традиции, не затребовали образец файла и я не смог воспользоваться результатом Ваших усилий :) |
Цитата:
|
alpap, Чтобы зайти в папку, её надо знать.
Цитата:
|
megaloman, я обычно так и делаю по возможности.
|
Время: 23:27. |
Время: 23:27.
© OSzone.net 2001-